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

Unified Diff: tools/telemetry/third_party/gsutilz/third_party/apitools/apitools/base/py/testing/mock_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/testing/mock_test.py
diff --git a/tools/telemetry/third_party/gsutilz/third_party/apitools/apitools/base/py/testing/mock_test.py b/tools/telemetry/third_party/gsutilz/third_party/apitools/apitools/base/py/testing/mock_test.py
new file mode 100644
index 0000000000000000000000000000000000000000..4a6c57cd6757ba9390807106c84bdd7a5583b671
--- /dev/null
+++ b/tools/telemetry/third_party/gsutilz/third_party/apitools/apitools/base/py/testing/mock_test.py
@@ -0,0 +1,129 @@
+"""Tests for apitools.base.py.testing.mock."""
+
+from protorpc import messages
+import unittest2
+
+import apitools.base.py as apitools_base
+from apitools.base.py.testing import mock
+from apitools.base.py.testing import testclient as fusiontables
+
+
+class MockTest(unittest2.TestCase):
+
+ def testMockFusionBasic(self):
+ with mock.Client(fusiontables.FusiontablesV1) as client_class:
+ client_class.column.List.Expect(request=1, response=2)
+ client = fusiontables.FusiontablesV1(get_credentials=False)
+ self.assertEqual(client.column.List(1), 2)
+ with self.assertRaises(mock.UnexpectedRequestException):
+ client.column.List(3)
+
+ def testMockFusionException(self):
+ with mock.Client(fusiontables.FusiontablesV1) as client_class:
+ client_class.column.List.Expect(
+ request=1,
+ exception=apitools_base.HttpError({'status': 404}, '', ''))
+ client = fusiontables.FusiontablesV1(get_credentials=False)
+ with self.assertRaises(apitools_base.HttpError):
+ client.column.List(1)
+
+ def testMockFusionOrder(self):
+ with mock.Client(fusiontables.FusiontablesV1) as client_class:
+ client_class.column.List.Expect(request=1, response=2)
+ client_class.column.List.Expect(request=2, response=1)
+ client = fusiontables.FusiontablesV1(get_credentials=False)
+ self.assertEqual(client.column.List(1), 2)
+ self.assertEqual(client.column.List(2), 1)
+
+ def testMockFusionWrongOrder(self):
+ with mock.Client(fusiontables.FusiontablesV1) as client_class:
+ client_class.column.List.Expect(request=1, response=2)
+ client_class.column.List.Expect(request=2, response=1)
+ client = fusiontables.FusiontablesV1(get_credentials=False)
+ with self.assertRaises(mock.UnexpectedRequestException):
+ self.assertEqual(client.column.List(2), 1)
+ with self.assertRaises(mock.UnexpectedRequestException):
+ self.assertEqual(client.column.List(1), 2)
+
+ def testMockFusionTooMany(self):
+ with mock.Client(fusiontables.FusiontablesV1) as client_class:
+ client_class.column.List.Expect(request=1, response=2)
+ client = fusiontables.FusiontablesV1(get_credentials=False)
+ self.assertEqual(client.column.List(1), 2)
+ with self.assertRaises(mock.UnexpectedRequestException):
+ self.assertEqual(client.column.List(2), 1)
+
+ def testMockFusionTooFew(self):
+ with self.assertRaises(mock.ExpectedRequestsException):
+ with mock.Client(fusiontables.FusiontablesV1) as client_class:
+ client_class.column.List.Expect(request=1, response=2)
+ client_class.column.List.Expect(request=2, response=1)
+ client = fusiontables.FusiontablesV1(get_credentials=False)
+ self.assertEqual(client.column.List(1), 2)
+
+ def testFusionUnmock(self):
+ with mock.Client(fusiontables.FusiontablesV1):
+ client = fusiontables.FusiontablesV1(get_credentials=False)
+ mocked_service_type = type(client.column)
+ client = fusiontables.FusiontablesV1(get_credentials=False)
+ self.assertNotEqual(type(client.column), mocked_service_type)
+
+
+class _NestedMessage(messages.Message):
+ nested = messages.StringField(1)
+
+
+class _NestedListMessage(messages.Message):
+ nested_list = messages.MessageField(_NestedMessage, 1, repeated=True)
+
+
+class _NestedNestedMessage(messages.Message):
+ nested = messages.MessageField(_NestedMessage, 1)
+
+
+class UtilTest(unittest2.TestCase):
+
+ def testMessagesEqual(self):
+ self.assertFalse(mock._MessagesEqual(
+ _NestedNestedMessage(
+ nested=_NestedMessage(
+ nested='foo')),
+ _NestedNestedMessage(
+ nested=_NestedMessage(
+ nested='bar'))))
+
+ self.assertTrue(mock._MessagesEqual(
+ _NestedNestedMessage(
+ nested=_NestedMessage(
+ nested='foo')),
+ _NestedNestedMessage(
+ nested=_NestedMessage(
+ nested='foo'))))
+
+ def testListedMessagesEqual(self):
+ self.assertTrue(mock._MessagesEqual(
+ _NestedListMessage(
+ nested_list=[_NestedMessage(nested='foo')]),
+ _NestedListMessage(
+ nested_list=[_NestedMessage(nested='foo')])))
+
+ self.assertTrue(mock._MessagesEqual(
+ _NestedListMessage(
+ nested_list=[_NestedMessage(nested='foo'),
+ _NestedMessage(nested='foo2')]),
+ _NestedListMessage(
+ nested_list=[_NestedMessage(nested='foo'),
+ _NestedMessage(nested='foo2')])))
+
+ self.assertFalse(mock._MessagesEqual(
+ _NestedListMessage(
+ nested_list=[_NestedMessage(nested='foo')]),
+ _NestedListMessage(
+ nested_list=[_NestedMessage(nested='bar')])))
+
+ self.assertFalse(mock._MessagesEqual(
+ _NestedListMessage(
+ nested_list=[_NestedMessage(nested='foo')]),
+ _NestedListMessage(
+ nested_list=[_NestedMessage(nested='foo'),
+ _NestedMessage(nested='foo')])))

Powered by Google App Engine
This is Rietveld 408576698