Added support for getting the following count and follower count to the SimpleWrapper Tweaked performance of test_services by going from fetching one result to 0.
118 lines
4.4 KiB
Python
118 lines
4.4 KiB
Python
#!/usr/bin/python2.4
|
|
#
|
|
# Copyright 2010 Google Inc. All Rights Reserved.
|
|
|
|
__author__ = 'ade@google.com (Ade Oshineye)'
|
|
|
|
from contrib.buzz.simple_wrapper import SimpleWrapper
|
|
|
|
import apiclient.oauth
|
|
import httplib2
|
|
import logging
|
|
import oauth2 as oauth
|
|
import os
|
|
import pickle
|
|
import unittest
|
|
|
|
class SimpleWrapperTest(unittest.TestCase):
|
|
# None of these tests make a remote call. We assume the underlying libraries
|
|
# and servers are working.
|
|
|
|
def test_wrapper_rejects_empty_post(self):
|
|
wrapper = SimpleWrapper()
|
|
self.assertEquals(None, wrapper.post('', '108242092577082601423'))
|
|
|
|
def test_wrapper_rejects_post_containing_only_whitespace(self):
|
|
wrapper = SimpleWrapper()
|
|
self.assertEquals(None, wrapper.post(' ', '108242092577082601423'))
|
|
|
|
def test_wrapper_rejects_none_post(self):
|
|
wrapper = SimpleWrapper()
|
|
self.assertEquals(None, wrapper.post(None, '108242092577082601423'))
|
|
|
|
def test_wrapper_rejects_empty_search(self):
|
|
wrapper = SimpleWrapper()
|
|
self.assertEquals(None, wrapper.search(''))
|
|
|
|
def test_wrapper_rejects_search_containing_only_whitespace(self):
|
|
wrapper = SimpleWrapper()
|
|
self.assertEquals(None, wrapper.search(' '))
|
|
|
|
def test_wrapper_rejects_search_with_none(self):
|
|
wrapper = SimpleWrapper()
|
|
self.assertEquals(None, wrapper.search(None))
|
|
|
|
def test_wrapper_returns_minus_one_for_hidden_follower_count(self):
|
|
wrapper = SimpleWrapper()
|
|
self.assertEquals(-1, wrapper.get_follower_count(user_id='108242092577082601423'))
|
|
|
|
def test_wrapper_returns_positive_value_for_visible_follower_count(self):
|
|
wrapper = SimpleWrapper()
|
|
count = wrapper.get_follower_count(user_id='googlebuzz')
|
|
self.assertTrue(count > 0, "Got %s instead" % count)
|
|
|
|
def test_wrapper_returns_minus_one_for_hidden_following_count(self):
|
|
wrapper = SimpleWrapper()
|
|
self.assertEquals(-1, wrapper.get_following_count(user_id='108242092577082601423'))
|
|
|
|
def test_wrapper_returns_positive_value_for_visible_following_count(self):
|
|
wrapper = SimpleWrapper()
|
|
count = wrapper.get_following_count(user_id='googlebuzz')
|
|
self.assertTrue(count > 0, "Got %s instead" % count)
|
|
|
|
class SimpleWrapperRemoteTest(unittest.TestCase):
|
|
# These tests make remote calls
|
|
def __init__(self, method_name):
|
|
unittest.TestCase.__init__(self, method_name)
|
|
oauth_params_dict = {}
|
|
for line in open('./contrib_tests/test_account.oacurl.properties'):
|
|
line = line.strip()
|
|
if line.startswith('#'):
|
|
continue
|
|
key,value = line.split('=')
|
|
oauth_params_dict[key.strip()] = value.strip()
|
|
|
|
consumer = oauth.Consumer(oauth_params_dict['consumerKey'],
|
|
oauth_params_dict['consumerSecret'])
|
|
token = oauth.Token(oauth_params_dict['accessToken'],
|
|
oauth_params_dict['accessTokenSecret'])
|
|
user_agent = 'google-api-client-python-buzz-webapp/1.0'
|
|
credentials = apiclient.oauth.OAuthCredentials(consumer, token, user_agent)
|
|
self.wrapper = SimpleWrapper(credentials=credentials)
|
|
|
|
def test_searching_returns_results(self):
|
|
results = self.wrapper.search('oshineye')
|
|
self.assertTrue(results is not None)
|
|
|
|
def test_searching_honours_max_results(self):
|
|
max = 5
|
|
results = self.wrapper.search('oshineye', max_results=max)
|
|
self.assertEquals(max, len(results))
|
|
|
|
def test_can_fetch_profile(self):
|
|
profile = self.wrapper.get_profile('googlebuzz')
|
|
self.assertTrue(profile is not None)
|
|
|
|
profile = self.wrapper.get_profile(user_id='adewale')
|
|
self.assertTrue(profile is not None)
|
|
|
|
def test_can_post_without_user_id(self):
|
|
url = self.wrapper.post('test message')
|
|
self.assertTrue(url is not None)
|
|
self.assertTrue(url.startswith('http://www.google.com/buzz/'))
|
|
|
|
def test_can_post_with_user_id(self):
|
|
url = self.wrapper.post('test message', '108242092577082601423')
|
|
self.assertTrue(url is not None)
|
|
self.assertTrue(url.startswith('http://www.google.com/buzz/'))
|
|
|
|
def test_wrapper_returns_positive_value_for_hidden_follower_count_when_authorised(self):
|
|
count = self.wrapper.get_follower_count(user_id='108242092577082601423')
|
|
self.assertTrue(count > 0, "Got %s instead" % count)
|
|
|
|
def test_wrapper_returns_positive_value_for_hidden_following_count_when_authorised(self):
|
|
count = self.wrapper.get_following_count(user_id='108242092577082601423')
|
|
self.assertTrue(count > 0, "Got %s instead" % count)
|
|
|
|
if __name__ == '__main__':
|
|
unittest.main() |