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

Unified Diff: tools/telemetry/third_party/gsutilz/third_party/apitools/apitools/base/py/transfer_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/transfer_test.py
diff --git a/tools/telemetry/third_party/gsutilz/third_party/apitools/apitools/base/py/transfer_test.py b/tools/telemetry/third_party/gsutilz/third_party/apitools/apitools/base/py/transfer_test.py
index 9d58b1ea629b99105cdd4348dc18ce452ea66042..8e29f128e7947f7dd21b9eae73216d66c0214b35 100644
--- a/tools/telemetry/third_party/gsutilz/third_party/apitools/apitools/base/py/transfer_test.py
+++ b/tools/telemetry/third_party/gsutilz/third_party/apitools/apitools/base/py/transfer_test.py
@@ -76,6 +76,36 @@ class TransferTest(unittest2.TestCase):
download._Download__ComputeEndByte(start),
msg='Failed on start={0}'.format(start))
+ def testGetRange(self):
+ for (start_byte, end_byte) in [(0, 25), (5, 15), (0, 0), (25, 25)]:
+ bytes_http = object()
+ http = object()
+ download_stream = six.StringIO()
+ download = transfer.Download.FromStream(download_stream,
+ total_size=26,
+ auto_transfer=False)
+ download.bytes_http = bytes_http
+ base_url = 'https://part.one/'
+ with mock.patch.object(http_wrapper, 'MakeRequest',
+ autospec=True) as make_request:
+ make_request.return_value = http_wrapper.Response(
+ info={
+ 'content-range': 'bytes %d-%d/26' %
+ (start_byte, end_byte),
+ 'status': http_client.OK,
+ },
+ content=string.ascii_lowercase[start_byte:end_byte+1],
+ request_url=base_url,
+ )
+ request = http_wrapper.Request(url='https://part.one/')
+ download.InitializeDownload(request, http=http)
+ download.GetRange(start_byte, end_byte)
+ self.assertEqual(1, make_request.call_count)
+ received_request = make_request.call_args[0][1]
+ self.assertEqual(base_url, received_request.url)
+ self.assertRangeAndContentRangeCompatible(
+ received_request, make_request.return_value)
+
def testNonChunkedDownload(self):
bytes_http = object()
http = object()

Powered by Google App Engine
This is Rietveld 408576698