Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(1)

Unified Diff: tools/telemetry/third_party/gsutilz/third_party/apitools/apitools/base/py/base_api_test.py

Issue 1376593003: Roll gsutil version to 4.15. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 5 years, 3 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: tools/telemetry/third_party/gsutilz/third_party/apitools/apitools/base/py/base_api_test.py
diff --git a/tools/telemetry/third_party/gsutilz/third_party/apitools/apitools/base/py/base_api_test.py b/tools/telemetry/third_party/gsutilz/third_party/apitools/apitools/base/py/base_api_test.py
index 86141a3a71a9acb7a8f58b5a6b366772508bc314..7758c434aa7c93c5e886c1f17823f0d42f4ed9bc 100644
--- a/tools/telemetry/third_party/gsutilz/third_party/apitools/apitools/base/py/base_api_test.py
+++ b/tools/telemetry/third_party/gsutilz/third_party/apitools/apitools/base/py/base_api_test.py
@@ -1,8 +1,10 @@
+import base64
import datetime
import sys
from protorpc import message_types
from protorpc import messages
+import six
from six.moves import urllib_parse
import unittest2
@@ -13,6 +15,7 @@ from apitools.base.py import http_wrapper
class SimpleMessage(messages.Message):
field = messages.StringField(1)
+ bytes_field = messages.BytesField(2)
class MessageWithTime(messages.Message):
@@ -40,6 +43,7 @@ class StandardQueryParameters(messages.Message):
prettyPrint = messages.BooleanField(
5, default=True) # pylint: disable=invalid-name
pp = messages.BooleanField(6, default=True)
+ nextPageToken = messages.BytesField(7) # pylint:disable=invalid-name
class FakeCredentials(object):
@@ -147,6 +151,37 @@ class BaseApiTest(unittest2.TestCase):
self.assertTrue('prettyPrint=0' in http_request.url)
self.assertTrue('pp=0' in http_request.url)
+ def testQueryBytesRequest(self):
+ method_config = base_api.ApiMethodInfo(
+ request_type_name='SimpleMessage', query_params=['bytes_field'])
+ service = FakeService()
+ non_unicode_message = b''.join((six.int2byte(100),
+ six.int2byte(200)))
+ request = SimpleMessage(bytes_field=non_unicode_message)
+ global_params = StandardQueryParameters()
+ http_request = service.PrepareHttpRequest(method_config, request,
+ global_params=global_params)
+ want = urllib_parse.urlencode({
+ 'bytes_field': base64.urlsafe_b64encode(non_unicode_message),
+ })
+ self.assertIn(want, http_request.url)
+
+ def testQueryBytesGlobalParams(self):
+ method_config = base_api.ApiMethodInfo(
+ request_type_name='SimpleMessage', query_params=['bytes_field'])
+ service = FakeService()
+ non_unicode_message = b''.join((six.int2byte(100),
+ six.int2byte(200)))
+ request = SimpleMessage()
+ global_params = StandardQueryParameters(
+ nextPageToken=non_unicode_message)
+ http_request = service.PrepareHttpRequest(method_config, request,
+ global_params=global_params)
+ want = urllib_parse.urlencode({
+ 'nextPageToken': base64.urlsafe_b64encode(non_unicode_message),
+ })
+ self.assertIn(want, http_request.url)
+
def testQueryRemapping(self):
method_config = base_api.ApiMethodInfo(
request_type_name='MessageWithRemappings',
@@ -177,3 +212,13 @@ class BaseApiTest(unittest2.TestCase):
expected_url = service.client.url + 'parameters/gonna/remap/ONE/TWO'
http_request = service.PrepareHttpRequest(method_config, request)
self.assertEqual(expected_url, http_request.url)
+
+ def testColonInRelativePath(self):
+ method_config = base_api.ApiMethodInfo(
+ relative_path='path:withJustColon',
+ request_type_name='SimpleMessage')
+ service = FakeService()
+ request = SimpleMessage()
+ http_request = service.PrepareHttpRequest(method_config, request)
+ self.assertEqual('http://www.example.com/path:withJustColon',
+ http_request.url)

Powered by Google App Engine
This is Rietveld 408576698