Add functional tests for patch and fields. Reviewed in http://codereview.appspot.com/4536109/
diff --git a/functional_tests/test_services.py b/functional_tests/test_services.py
index 205cab1..f9263a3 100644
--- a/functional_tests/test_services.py
+++ b/functional_tests/test_services.py
@@ -142,6 +142,45 @@
).execute()
self.assertTrue(activity is not None)
+ def test_fields_parameter_restricts_response_fields(self):
+ activity = self.buzz.activities().insert(userId='@me', body={
+ 'data': {
+ 'title': 'Testing patch',
+ 'object': {
+ 'content': u'Just a short note to show that insert is working. ?',
+ 'type': 'note'}
+ }
+ }
+ ).execute()
+ self.assertTrue('kind' in activity)
+
+ # test fields to restrict what is returned
+ activity = self.buzz.activities().get(userId='@me', postId=activity['id'],
+ fields='object,id').execute()
+ self.assertTrue('kind' not in activity)
+ self.assertTrue('object' in activity)
+ self.assertTrue('id' in activity)
+
+ def test_patch(self):
+ activity = self.buzz.activities().insert(userId='@me', body={
+ 'data': {
+ 'title': 'Testing patch',
+ 'object': {
+ 'content': u'Just a short note to show that insert is working. ?',
+ 'type': 'note'}
+ }
+ }).execute()
+ # Construct a raw patch to send, also restrict the response with fields
+ activity = self.buzz.activities().patch(userId='@me',
+ scope='@self',
+ postId=activity['id'],
+ body={
+ 'object': {
+ 'content': 'Updated content only!'}},
+ fields='object').execute()
+ self.assertEquals(activity['object']['content'], 'Updated content only!')
+ self.assertTrue('id' not in activity)
+
def test_can_create_private_activity(self):
activity = self.buzz.activities().insert(userId='@me', body={
'data': {