def test_getTweetsByHashtag_obtainResultFromApiSuccessfully( self, mocked_header, mocked_url, mocked_get): twitter_api = TwitterApi() mocked_url.return_value = "api_url" mocked_header.return_value = "header" json_response = "json_response" mocked_get.return_value.status_code = 200 mocked_get.return_value.text = json_response twitter_api.getTweetsByHashtag('hashtag', '3') mocked_get.assert_called_with("api_url", headers="header")
def test_getTweetsByHashtag_handleExceptionOnApiBadRequest( self, mocked_header, mocked_url, mocked_get): twitter_api = TwitterApi() mocked_url.return_value = "api_url" mocked_header.return_value = "header" json_response = "json_response" mocked_get.return_value.status_code = 400 mocked_get.return_value.text = json_response with self.assertRaises(Exception): twitter_api.getTweetsByHashtag('hashtag', '3') mocked_get.assert_called_with("api_url", headers="header")
def tweets_hashtag(hashtag): limit = request.args.get('limit') if limit is None: limit = DEFAULT_LIMIT twitter_api = TwitterApi() json_response = twitter_api.getTweetsByHashtag(hashtag, limit) tweets = json_response['statuses'] summary = twitter_api.extractTweetInfo(tweets) return json.dumps(summary)