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

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

Issue 1264873003: Add gsutil/third_party to telemetry/third_party/gsutilz/third_party. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Remove httplib2 Created 5 years, 5 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/stream_slice_test.py
diff --git a/tools/telemetry/third_party/gsutilz/third_party/apitools/apitools/base/py/stream_slice_test.py b/tools/telemetry/third_party/gsutilz/third_party/apitools/apitools/base/py/stream_slice_test.py
new file mode 100644
index 0000000000000000000000000000000000000000..f9b13b99a95481fd42b15c06d8c1f70f1bb196fa
--- /dev/null
+++ b/tools/telemetry/third_party/gsutilz/third_party/apitools/apitools/base/py/stream_slice_test.py
@@ -0,0 +1,50 @@
+"""Tests for stream_slice."""
+
+import string
+
+import six
+import unittest2
+
+from apitools.base.py import exceptions
+from apitools.base.py import stream_slice
+
+
+class StreamSliceTest(unittest2.TestCase):
+
+ def setUp(self):
+ self.stream = six.StringIO(string.ascii_letters)
+ self.value = self.stream.getvalue()
+ self.stream.seek(0)
+
+ def testSimpleSlice(self):
+ ss = stream_slice.StreamSlice(self.stream, 10)
+ self.assertEqual('', ss.read(0))
+ self.assertEqual(self.value[0:3], ss.read(3))
+ self.assertIn('7/10', str(ss))
+ self.assertEqual(self.value[3:10], ss.read())
+ self.assertEqual('', ss.read())
+ self.assertEqual('', ss.read(10))
+ self.assertEqual(10, self.stream.tell())
+
+ def testEmptySlice(self):
+ ss = stream_slice.StreamSlice(self.stream, 0)
+ self.assertEqual('', ss.read(5))
+ self.assertEqual('', ss.read())
+ self.assertEqual(0, self.stream.tell())
+
+ def testOffsetStream(self):
+ self.stream.seek(26)
+ ss = stream_slice.StreamSlice(self.stream, 26)
+ self.assertEqual(self.value[26:36], ss.read(10))
+ self.assertEqual(self.value[36:], ss.read())
+ self.assertEqual('', ss.read())
+
+ def testTooShortStream(self):
+ ss = stream_slice.StreamSlice(self.stream, 1000)
+ self.assertEqual(self.value, ss.read())
+ self.assertEqual('', ss.read(0))
+ with self.assertRaises(exceptions.StreamExhausted) as e:
+ ss.read()
+ with self.assertRaises(exceptions.StreamExhausted) as e:
+ ss.read(10)
+ self.assertIn('exhausted after %d' % len(self.value), str(e.exception))

Powered by Google App Engine
This is Rietveld 408576698