Added tests for getting a specific activity; creating a public activity; fetching specific groups for a user; commenting on an activity
diff --git a/functional_tests/test_services.py b/functional_tests/test_services.py
index e933094..99efe35 100644
--- a/functional_tests/test_services.py
+++ b/functional_tests/test_services.py
@@ -10,6 +10,7 @@
only work with publicly visible data in order to avoid dealing with OAuth.
"""
import httplib2
+import pprint
__author__ = 'ade@google.com (Ade Oshineye)'
@@ -34,29 +35,43 @@
return httplib2.Response(self.headers), self.data
class BuzzFunctionalTest(unittest.TestCase):
+ def test_can_get_specific_activity(self):
+ buzz = build('buzz', 'v1')
+ activity = buzz.activities().get(userId='105037104815911535953',
+ postId='B:z12sspviqyakfvye123wehng0muwz5jzq04').execute()
+
+ self.assertTrue(activity is not None)
+
+ def test_can_get_specific_activity_with_tag_id(self):
+ buzz = build('buzz', 'v1')
+ activity = buzz.activities().get(userId='105037104815911535953',
+ postId='tag:google.com,2010:buzz:z13ptnw5usmnv15ey22fzlswnuqoebasu').execute()
+
+ self.assertTrue(activity is not None)
+
def test_can_get_buzz_activities_with_many_params(self):
buzz = build('buzz', 'v1')
max_results = 2
- actcol = buzz.activities()
- activities = actcol.list(userId='googlebuzz', scope='@self',
+ activities_command = buzz.activities()
+ activities = activities_command.list(userId='googlebuzz', scope='@self',
max_comments=max_results*2 ,max_liked=max_results*3,
max_results=max_results).execute()
activity_count = len(activities['items'])
self.assertEquals(max_results, activity_count)
- activities = actcol.list_next(activities).execute()
+ activities = activities_command.list_next(activities).execute()
activity_count = len(activities['items'])
self.assertEquals(max_results, activity_count)
def test_can_get_multiple_pages_of_buzz_activities(self):
buzz = build('buzz', 'v1')
max_results = 2
- actcol = buzz.activities()
+ activities_command = buzz.activities()
- activities = actcol.list(userId='adewale', scope='@self',
+ activities = activities_command.list(userId='adewale', scope='@self',
max_results=max_results).execute()
for count in range(10):
- activities = actcol.list_next(activities).execute()
+ activities = activities_command.list_next(activities).execute()
activity_count = len(activities['items'])
self.assertEquals(max_results, activity_count, 'Failed after %s pages' % str(count))
@@ -122,7 +137,19 @@
self.http = credentials.authorize(httplib2.Http())
- def test_can_list_groups_belonging_to_user(self):
+ def test_can_create_activity(self):
+ buzz = build('buzz', 'v1', http=self.http)
+
+ activity = buzz.activities().insert(userId='@me', body={
+ 'title': 'Testing insert',
+ 'object': {
+ 'content': u'Just a short note to show that insert is working. ?',
+ 'type': 'note'}
+ }
+ ).execute()
+ self.assertTrue(activity is not None)
+
+ def test_can_identify_number_of_groups_belonging_to_user(self):
buzz = build('buzz', 'v1', http=self.http)
groups = buzz.groups().list(userId='108242092577082601423').execute()
@@ -130,6 +157,57 @@
expected_default_number_of_groups = 4
self.assertEquals(expected_default_number_of_groups, len(groups['items']))
+ def IGNORE__test_can_like_activity(self):
+ buzz = build('buzz', 'v1', http=self.http)
+ activity = buzz.activities().insert(userId='@me', body={
+ 'title': 'Testing insert',
+ 'object': {
+ 'content': u'Just a short note to show that insert is working. ?',
+ 'type': 'note'}
+ }
+ ).execute()
+ pprint.pprint(activity)
+ id = activity['id']
+ likers = buzz.people().liked(userId='105037104815911535953', postId=id, groupId='@liked', scope='@self').execute()
+ # Todo(ade) Insert the new liker once the Buzz back-end bug is fixed
+
+ def test_can_comment_on_activity(self):
+ buzz = build('buzz', 'v1', http=self.http)
+
+ activity = buzz.activities().insert(userId='@me', body={
+ 'title': 'A new activity',
+ 'object': {
+ 'content': u'The body of the new activity',
+ 'type': 'note'}
+ }
+ ).execute()
+
+ id = activity['id']
+ comment = buzz.comments().insert(userId='@me', postId=id, body={
+ "content": "A comment on the new activity"
+ }).execute()
+
+ def IGNORE__test_can_list_groups_belonging_to_user(self):
+ # TODO(ade) Uncomment this test once the related Buzz back-end bug is fixed
+ buzz = build('buzz', 'v1', http=self.http)
+ groups = buzz.groups().list(userId='108242092577082601423').execute()
+ pprint.pprint(groups)
+
+ group = buzz.groups().get(userId='108242092577082601423', groupId='G:108242092577082601423:15').execute()
+ self.assertEquals('G:108242092577082601423:15', group['id'], group)
+
+ group = buzz.groups().get(userId='108242092577082601423', groupId='G:108242092577082601423:14').execute()
+ self.assertEquals('G:108242092577082601423:14', group['id'], group)
+
+ group = buzz.groups().get(userId='108242092577082601423', groupId='G:108242092577082601423:13').execute()
+ self.assertEquals('G:108242092577082601423:13', group['id'], group)
+
+ group = buzz.groups().get(userId='108242092577082601423', groupId='G:108242092577082601423:6').execute()
+ self.assertEquals('G:108242092577082601423:6', group['id'], group)
+
+ group = buzz.groups().get(userId='108242092577082601423', groupId='G:108242092577082601423:9999999').execute()
+ self.assertEquals(None, group, group)
+
if __name__ == '__main__':
unittest.main()