| Index: third_party/protobuf/python/google/protobuf/internal/message_factory_test.py
|
| diff --git a/third_party/protobuf/python/google/protobuf/internal/message_factory_test.py b/third_party/protobuf/python/google/protobuf/internal/message_factory_test.py
|
| index 0bc9be99491e7174dc0151699fa6a7f09dbd4664..2fbe5ea7ac23383537aca0a35a099f003b630510 100644
|
| --- a/third_party/protobuf/python/google/protobuf/internal/message_factory_test.py
|
| +++ b/third_party/protobuf/python/google/protobuf/internal/message_factory_test.py
|
| @@ -1,8 +1,8 @@
|
| -#! /usr/bin/python
|
| +#! /usr/bin/env python
|
| #
|
| # Protocol Buffers - Google's data interchange format
|
| # Copyright 2008 Google Inc. All rights reserved.
|
| -# http://code.google.com/p/protobuf/
|
| +# https://developers.google.com/protocol-buffers/
|
| #
|
| # Redistribution and use in source and binary forms, with or without
|
| # modification, are permitted provided that the following conditions are
|
| @@ -34,7 +34,10 @@
|
|
|
| __author__ = 'matthewtoia@google.com (Matt Toia)'
|
|
|
| -import unittest
|
| +try:
|
| + import unittest2 as unittest
|
| +except ImportError:
|
| + import unittest
|
| from google.protobuf import descriptor_pb2
|
| from google.protobuf.internal import factory_test1_pb2
|
| from google.protobuf.internal import factory_test2_pb2
|
| @@ -61,8 +64,8 @@ class MessageFactoryTest(unittest.TestCase):
|
| msg.factory_1_message.nested_factory_1_message.value = (
|
| 'nested message value')
|
| msg.factory_1_message.scalar_value = 22
|
| - msg.factory_1_message.list_value.extend(['one', 'two', 'three'])
|
| - msg.factory_1_message.list_value.append('four')
|
| + msg.factory_1_message.list_value.extend([u'one', u'two', u'three'])
|
| + msg.factory_1_message.list_value.append(u'four')
|
| msg.factory_1_enum = 1
|
| msg.nested_factory_1_enum = 0
|
| msg.nested_factory_1_message.value = 'nested message value'
|
| @@ -70,8 +73,8 @@ class MessageFactoryTest(unittest.TestCase):
|
| msg.circular_message.circular_message.mandatory = 2
|
| msg.circular_message.scalar_value = 'one deep'
|
| msg.scalar_value = 'zero deep'
|
| - msg.list_value.extend(['four', 'three', 'two'])
|
| - msg.list_value.append('one')
|
| + msg.list_value.extend([u'four', u'three', u'two'])
|
| + msg.list_value.append(u'one')
|
| msg.grouped.add()
|
| msg.grouped[0].part_1 = 'hello'
|
| msg.grouped[0].part_2 = 'world'
|
| @@ -81,9 +84,9 @@ class MessageFactoryTest(unittest.TestCase):
|
| serialized = msg.SerializeToString()
|
| converted = factory_test2_pb2.Factory2Message.FromString(serialized)
|
| reserialized = converted.SerializeToString()
|
| - self.assertEquals(serialized, reserialized)
|
| + self.assertEqual(serialized, reserialized)
|
| result = cls.FromString(reserialized)
|
| - self.assertEquals(msg, result)
|
| + self.assertEqual(msg, result)
|
|
|
| def testGetPrototype(self):
|
| db = descriptor_database.DescriptorDatabase()
|
| @@ -92,22 +95,41 @@ class MessageFactoryTest(unittest.TestCase):
|
| db.Add(self.factory_test2_fd)
|
| factory = message_factory.MessageFactory()
|
| cls = factory.GetPrototype(pool.FindMessageTypeByName(
|
| - 'net.proto2.python.internal.Factory2Message'))
|
| - self.assertIsNot(cls, factory_test2_pb2.Factory2Message)
|
| + 'google.protobuf.python.internal.Factory2Message'))
|
| + self.assertFalse(cls is factory_test2_pb2.Factory2Message)
|
| self._ExerciseDynamicClass(cls)
|
| cls2 = factory.GetPrototype(pool.FindMessageTypeByName(
|
| - 'net.proto2.python.internal.Factory2Message'))
|
| - self.assertIs(cls, cls2)
|
| + 'google.protobuf.python.internal.Factory2Message'))
|
| + self.assertTrue(cls is cls2)
|
|
|
| def testGetMessages(self):
|
| - messages = message_factory.GetMessages([self.factory_test2_fd,
|
| - self.factory_test1_fd])
|
| - self.assertContainsSubset(
|
| - ['net.proto2.python.internal.Factory2Message',
|
| - 'net.proto2.python.internal.Factory1Message'],
|
| - messages.keys())
|
| - self._ExerciseDynamicClass(
|
| - messages['net.proto2.python.internal.Factory2Message'])
|
| + # performed twice because multiple calls with the same input must be allowed
|
| + for _ in range(2):
|
| + messages = message_factory.GetMessages([self.factory_test1_fd,
|
| + self.factory_test2_fd])
|
| + self.assertTrue(
|
| + set(['google.protobuf.python.internal.Factory2Message',
|
| + 'google.protobuf.python.internal.Factory1Message'],
|
| + ).issubset(set(messages.keys())))
|
| + self._ExerciseDynamicClass(
|
| + messages['google.protobuf.python.internal.Factory2Message'])
|
| + self.assertTrue(
|
| + set(['google.protobuf.python.internal.Factory2Message.one_more_field',
|
| + 'google.protobuf.python.internal.another_field'],
|
| + ).issubset(
|
| + set(messages['google.protobuf.python.internal.Factory1Message']
|
| + ._extensions_by_name.keys())))
|
| + factory_msg1 = messages['google.protobuf.python.internal.Factory1Message']
|
| + msg1 = messages['google.protobuf.python.internal.Factory1Message']()
|
| + ext1 = factory_msg1._extensions_by_name[
|
| + 'google.protobuf.python.internal.Factory2Message.one_more_field']
|
| + ext2 = factory_msg1._extensions_by_name[
|
| + 'google.protobuf.python.internal.another_field']
|
| + msg1.Extensions[ext1] = 'test1'
|
| + msg1.Extensions[ext2] = 'test2'
|
| + self.assertEqual('test1', msg1.Extensions[ext1])
|
| + self.assertEqual('test2', msg1.Extensions[ext2])
|
| +
|
|
|
| if __name__ == '__main__':
|
| unittest.main()
|
|
|