Ejemplo n.º 1
0
    def test_raise_when_thread_tweet_fails(self, mocked_update_with_media,
                                           mocked_get_username):
        entry = MagicMock()
        type(entry).tweet_status_id_str = PropertyMock(
            return_value="1234567890")

        diff = get_mocked_diff()
        type(diff.old).entry = entry
        type(diff.new).tweet_status_id_str = PropertyMock()
        type(diff.new).save = MagicMock()
        type(diff).tweeted = PropertyMock(return_value=False)
        type(diff).save = MagicMock()

        twitter = TwitterHandler("myConsumerKey", "myConsumerSecret")
        twitter.tweet_diff(
            diff,
            {
                "access_token": "myAccessToken",
                "access_token_secret": "myAccessTokenSecret",
            },
        )

        mocked_update_with_media.assert_called_once()
        mocked_get_username.assert_not_called()
        diff.new.save.assert_not_called()
        diff.save.assert_not_called()
Ejemplo n.º 2
0
    def test_update_thread_if_old_entry_has_related_tweet(
            self, mocked_create_thread, mocked_get_username):

        entry = MagicMock()
        type(entry).tweet_status_id_str = PropertyMock(
            return_value="1234567890")

        diff = get_mocked_diff()
        type(diff.old).entry = entry

        twitter = TwitterHandler("myConsumerKey", "myConsumerSecret")
        twitter.tweet_diff(
            diff,
            {
                "access_token": "myAccessToken",
                "access_token_secret": "myAccessTokenSecret",
            },
        )

        mocked_create_thread.assert_not_called()
        mocked_get_username.assert_called_once()
Ejemplo n.º 3
0
    def test_tweet_diff(self):
        e = self.entry
        v1 = e.versions[0]

        # remove some characters from the version
        v1.summary = v1.summary[0:-20]
        v1.save()

        v2 = e.get_latest()

        # run this alone for checking correct tweeting behavior
        if v2 is not None:
            diff = v2.diff
            try:
                token = test_config.get("twitter.token")
                twitter_handler = TwitterHandler(
                    test_config.get("twitter.consumer_key"),
                    test_config.get("twitter.consumer_secret"),
                )
                twitter_handler.tweet_diff(diff, token)
                twitter_handler.delete_diff(diff, token)
            except Exception:
                logging.debug("no tweet configured for test. Doing nothing")
Ejemplo n.º 4
0
    def test_raises_if_not_all_archive_urls_are_present(self):
        diff = get_mocked_diff(False)
        token = {
            "access_token": "myAccessToken",
            "access_token_secret": "myAccessTokenSecret",
        }

        twitter = TwitterHandler("myConsumerKey", "myConsumerSecret")
        self.assertRaises(TwitterAchiveUrlNotFoundError, twitter.tweet_diff,
                          diff, token)

        type(diff.old).archive_url = PropertyMock(
            return_value="http://test.url/old")
        self.assertRaises(TwitterAchiveUrlNotFoundError, twitter.tweet_diff,
                          diff, token)

        type(diff.new).archive_url = PropertyMock(
            return_value="http://test.url/new")
        try:
            twitter.tweet_diff(diff, token)
        except TwitterAchiveUrlNotFoundError:
            self.fail(
                "twitter.tweet_diff raised AchiveUrlNotFoundError unexpectedly!"
            )