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

Unified Diff: tools/telemetry/third_party/gsutil/third_party/protorpc/protorpc/generate_python_test.py

Issue 1260493004: Revert "Add gsutil 4.13 to telemetry/third_party" (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: 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/gsutil/third_party/protorpc/protorpc/generate_python_test.py
diff --git a/tools/telemetry/third_party/gsutil/third_party/protorpc/protorpc/generate_python_test.py b/tools/telemetry/third_party/gsutil/third_party/protorpc/protorpc/generate_python_test.py
deleted file mode 100644
index 21a05cced0e035de0aeef219dfdf6ca9b04f6fd2..0000000000000000000000000000000000000000
--- a/tools/telemetry/third_party/gsutil/third_party/protorpc/protorpc/generate_python_test.py
+++ /dev/null
@@ -1,362 +0,0 @@
-#!/usr/bin/env python
-#
-# Copyright 2010 Google Inc.
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-#
-
-"""Tests for protorpc.generate_python_test."""
-
-__author__ = 'rafek@google.com (Rafe Kaplan)'
-
-
-import os
-import shutil
-import sys
-import tempfile
-import unittest
-
-from protorpc import descriptor
-from protorpc import generate_python
-from protorpc import test_util
-from protorpc import util
-
-
-class ModuleInterfaceTest(test_util.ModuleInterfaceTest,
- test_util.TestCase):
-
- MODULE = generate_python
-
-
-class FormatPythonFileTest(test_util.TestCase):
-
- def setUp(self):
- self.original_path = list(sys.path)
- self.original_modules = dict(sys.modules)
- sys.path = list(sys.path)
- self.file_descriptor = descriptor.FileDescriptor()
-
- # Create temporary directory and add to Python path so that generated
- # Python code can be easily parsed, imported and executed.
- self.temp_dir = tempfile.mkdtemp()
- sys.path.append(self.temp_dir)
-
- def tearDown(self):
- # Reset path.
- sys.path[:] = []
- sys.path.extend(self.original_path)
-
- # Reset modules.
- sys.modules.clear()
- sys.modules.update(self.original_modules)
-
- # Remove temporary directory.
- try:
- shutil.rmtree(self.temp_dir)
- except IOError:
- pass
-
- def DoPythonTest(self, file_descriptor):
- """Execute python test based on a FileDescriptor object.
-
- The full test of the Python code generation is to generate a Python source
- code file, import the module and regenerate the FileDescriptor from it.
- If the generated FileDescriptor is the same as the original, it means that
- the generated source code correctly implements the actual FileDescriptor.
- """
- file_name = os.path.join(self.temp_dir,
- '%s.py' % (file_descriptor.package or 'blank',))
- source_file = open(file_name, 'wt')
- try:
- generate_python.format_python_file(file_descriptor, source_file)
- finally:
- source_file.close()
-
- module_to_import = file_descriptor.package or 'blank'
- module = __import__(module_to_import)
-
- if not file_descriptor.package:
- self.assertFalse(hasattr(module, 'package'))
- module.package = '' # Create package name so that comparison will work.
-
- reloaded_descriptor = descriptor.describe_file(module)
-
- # Need to sort both message_types fields because document order is never
- # Ensured.
- # TODO(rafek): Ensure document order.
- if reloaded_descriptor.message_types:
- reloaded_descriptor.message_types = sorted(
- reloaded_descriptor.message_types, key=lambda v: v.name)
-
- if file_descriptor.message_types:
- file_descriptor.message_types = sorted(
- file_descriptor.message_types, key=lambda v: v.name)
-
- self.assertEquals(file_descriptor, reloaded_descriptor)
-
- @util.positional(2)
- def DoMessageTest(self,
- field_descriptors,
- message_types=None,
- enum_types=None):
- """Execute message generation test based on FieldDescriptor objects.
-
- Args:
- field_descriptor: List of FieldDescriptor object to generate and test.
- message_types: List of other MessageDescriptor objects that the new
- Message class depends on.
- enum_types: List of EnumDescriptor objects that the new Message class
- depends on.
- """
- file_descriptor = descriptor.FileDescriptor()
- file_descriptor.package = 'my_package'
-
- message_descriptor = descriptor.MessageDescriptor()
- message_descriptor.name = 'MyMessage'
-
- message_descriptor.fields = list(field_descriptors)
-
- file_descriptor.message_types = message_types or []
- file_descriptor.message_types.append(message_descriptor)
-
- if enum_types:
- file_descriptor.enum_types = list(enum_types)
-
- self.DoPythonTest(file_descriptor)
-
- def testBlankPackage(self):
- self.DoPythonTest(descriptor.FileDescriptor())
-
- def testEmptyPackage(self):
- file_descriptor = descriptor.FileDescriptor()
- file_descriptor.package = 'mypackage'
- self.DoPythonTest(file_descriptor)
-
- def testSingleField(self):
- field = descriptor.FieldDescriptor()
- field.name = 'integer_field'
- field.number = 1
- field.label = descriptor.FieldDescriptor.Label.OPTIONAL
- field.variant = descriptor.FieldDescriptor.Variant.INT64
-
- self.DoMessageTest([field])
-
- def testMessageField_InternalReference(self):
- other_message = descriptor.MessageDescriptor()
- other_message.name = 'OtherMessage'
-
- field = descriptor.FieldDescriptor()
- field.name = 'message_field'
- field.number = 1
- field.label = descriptor.FieldDescriptor.Label.OPTIONAL
- field.variant = descriptor.FieldDescriptor.Variant.MESSAGE
- field.type_name = 'my_package.OtherMessage'
-
- self.DoMessageTest([field], message_types=[other_message])
-
- def testMessageField_ExternalReference(self):
- field = descriptor.FieldDescriptor()
- field.name = 'message_field'
- field.number = 1
- field.label = descriptor.FieldDescriptor.Label.OPTIONAL
- field.variant = descriptor.FieldDescriptor.Variant.MESSAGE
- field.type_name = 'protorpc.registry.GetFileSetResponse'
-
- self.DoMessageTest([field])
-
- def testEnumField_InternalReference(self):
- enum = descriptor.EnumDescriptor()
- enum.name = 'Color'
-
- field = descriptor.FieldDescriptor()
- field.name = 'color'
- field.number = 1
- field.label = descriptor.FieldDescriptor.Label.OPTIONAL
- field.variant = descriptor.FieldDescriptor.Variant.ENUM
- field.type_name = 'my_package.Color'
-
- self.DoMessageTest([field], enum_types=[enum])
-
- def testEnumField_ExternalReference(self):
- field = descriptor.FieldDescriptor()
- field.name = 'color'
- field.number = 1
- field.label = descriptor.FieldDescriptor.Label.OPTIONAL
- field.variant = descriptor.FieldDescriptor.Variant.ENUM
- field.type_name = 'protorpc.descriptor.FieldDescriptor.Label'
-
- self.DoMessageTest([field])
-
- def testDateTimeField(self):
- field = descriptor.FieldDescriptor()
- field.name = 'timestamp'
- field.number = 1
- field.label = descriptor.FieldDescriptor.Label.OPTIONAL
- field.variant = descriptor.FieldDescriptor.Variant.MESSAGE
- field.type_name = 'protorpc.message_types.DateTimeMessage'
-
- self.DoMessageTest([field])
-
- def testNonDefaultVariant(self):
- field = descriptor.FieldDescriptor()
- field.name = 'integer_field'
- field.number = 1
- field.label = descriptor.FieldDescriptor.Label.OPTIONAL
- field.variant = descriptor.FieldDescriptor.Variant.UINT64
-
- self.DoMessageTest([field])
-
- def testRequiredField(self):
- field = descriptor.FieldDescriptor()
- field.name = 'integer_field'
- field.number = 1
- field.label = descriptor.FieldDescriptor.Label.REQUIRED
- field.variant = descriptor.FieldDescriptor.Variant.INT64
-
- self.DoMessageTest([field])
-
- def testRepeatedField(self):
- field = descriptor.FieldDescriptor()
- field.name = 'integer_field'
- field.number = 1
- field.label = descriptor.FieldDescriptor.Label.REPEATED
- field.variant = descriptor.FieldDescriptor.Variant.INT64
-
- self.DoMessageTest([field])
-
- def testIntegerDefaultValue(self):
- field = descriptor.FieldDescriptor()
- field.name = 'integer_field'
- field.number = 1
- field.label = descriptor.FieldDescriptor.Label.OPTIONAL
- field.variant = descriptor.FieldDescriptor.Variant.INT64
- field.default_value = '10'
-
- self.DoMessageTest([field])
-
- def testFloatDefaultValue(self):
- field = descriptor.FieldDescriptor()
- field.name = 'float_field'
- field.number = 1
- field.label = descriptor.FieldDescriptor.Label.OPTIONAL
- field.variant = descriptor.FieldDescriptor.Variant.DOUBLE
- field.default_value = '10.1'
-
- self.DoMessageTest([field])
-
- def testStringDefaultValue(self):
- field = descriptor.FieldDescriptor()
- field.name = 'string_field'
- field.number = 1
- field.label = descriptor.FieldDescriptor.Label.OPTIONAL
- field.variant = descriptor.FieldDescriptor.Variant.STRING
- field.default_value = u'a nice lovely string\'s "string"'
-
- self.DoMessageTest([field])
-
- def testEnumDefaultValue(self):
- field = descriptor.FieldDescriptor()
- field.name = 'label'
- field.number = 1
- field.label = descriptor.FieldDescriptor.Label.OPTIONAL
- field.variant = descriptor.FieldDescriptor.Variant.ENUM
- field.type_name = 'protorpc.descriptor.FieldDescriptor.Label'
- field.default_value = '2'
-
- self.DoMessageTest([field])
-
- def testMultiFields(self):
- field1 = descriptor.FieldDescriptor()
- field1.name = 'integer_field'
- field1.number = 1
- field1.label = descriptor.FieldDescriptor.Label.OPTIONAL
- field1.variant = descriptor.FieldDescriptor.Variant.INT64
-
- field2 = descriptor.FieldDescriptor()
- field2.name = 'string_field'
- field2.number = 2
- field2.label = descriptor.FieldDescriptor.Label.OPTIONAL
- field2.variant = descriptor.FieldDescriptor.Variant.STRING
-
- field3 = descriptor.FieldDescriptor()
- field3.name = 'unsigned_integer_field'
- field3.number = 3
- field3.label = descriptor.FieldDescriptor.Label.OPTIONAL
- field3.variant = descriptor.FieldDescriptor.Variant.UINT64
-
- self.DoMessageTest([field1, field2, field3])
-
- def testNestedMessage(self):
- message = descriptor.MessageDescriptor()
- message.name = 'OuterMessage'
-
- inner_message = descriptor.MessageDescriptor()
- inner_message.name = 'InnerMessage'
-
- inner_inner_message = descriptor.MessageDescriptor()
- inner_inner_message.name = 'InnerInnerMessage'
-
- inner_message.message_types = [inner_inner_message]
-
- message.message_types = [inner_message]
-
- file_descriptor = descriptor.FileDescriptor()
- file_descriptor.message_types = [message]
-
- self.DoPythonTest(file_descriptor)
-
- def testNestedEnum(self):
- message = descriptor.MessageDescriptor()
- message.name = 'OuterMessage'
-
- inner_enum = descriptor.EnumDescriptor()
- inner_enum.name = 'InnerEnum'
-
- message.enum_types = [inner_enum]
-
- file_descriptor = descriptor.FileDescriptor()
- file_descriptor.message_types = [message]
-
- self.DoPythonTest(file_descriptor)
-
- def testService(self):
- service = descriptor.ServiceDescriptor()
- service.name = 'TheService'
-
- method1 = descriptor.MethodDescriptor()
- method1.name = 'method1'
- method1.request_type = 'protorpc.descriptor.FileDescriptor'
- method1.response_type = 'protorpc.descriptor.MethodDescriptor'
-
- service.methods = [method1]
-
- file_descriptor = descriptor.FileDescriptor()
- file_descriptor.service_types = [service]
-
- self.DoPythonTest(file_descriptor)
-
- # Test to make sure that implementation methods raise an exception.
- import blank
- service_instance = blank.TheService()
- self.assertRaisesWithRegexpMatch(NotImplementedError,
- 'Method method1 is not implemented',
- service_instance.method1,
- descriptor.FileDescriptor())
-
-
-def main():
- unittest.main()
-
-
-if __name__ == '__main__':
- main()

Powered by Google App Engine
This is Rietveld 408576698