def test_get_tweets_success(self): with patch('admin_panel_api.twitter_interface.Twython.search' ) as mock_search: test_result = {'statuses': []} mock_search.return_value = test_result tweets = TwitterInterface.get_instance().get_tweets() self.assertEqual(tweets, test_result['statuses'])
def handle(self, *args, **options): tweets = TwitterInterface().get_tweets() for tweet in tweets: row = Tweet(id=tweet['id_str'], text=tweet['text'], lang=tweet['lang'], retweet_count=tweet['retweet_count'], favorite_count=tweet['favorite_count'], created_at=datetime.strptime( tweet['created_at'], '%a %b %d %H:%M:%S +0000 %Y'), place=getattr(tweet['place'], 'country', None), user=tweet['user']['screen_name']) row.save()
def __init__(self, **kwargs): super().__init__(**kwargs) self.tweet_collector = TwitterInterface.get_instance()
def test_favorite_error(self, mock_favorite): try: TwitterInterface.get_instance().favorite('1234') except Exception as e: self.assertIsNotNone(e)
def test_favorite_success(self, mock_favorite): TwitterInterface.get_instance().favorite('1234') self.assertEqual(mock_favorite.call_count, 1)
def test_retweet_error(self, mock_retweet): try: TwitterInterface.get_instance().retweet('1234') except Exception as e: self.assertIsNotNone(e)
def test_retweet_success(self, mock_retweet): TwitterInterface.get_instance().retweet('1234') self.assertEqual(mock_retweet.call_count, 1)
def test_get_tweets_error(self, mock_search): try: TwitterInterface.get_instance().get_tweets() except Exception as e: self.assertIsNotNone(e)
def test_singleton(self, mock_twython_init): instance1 = TwitterInterface.get_instance() instance2 = TwitterInterface.get_instance() self.assertIsNotNone(instance1) self.assertEqual(instance1, instance2) # Singleton