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

Side by Side Diff: third_party/protobuf/python/google/protobuf/internal/symbol_database_test.py

Issue 2495533002: third_party/protobuf: Update to HEAD (83d681ee2c) (Closed)
Patch Set: Make chrome settings proto generated file a component Created 4 years 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 unified diff | Download patch
OLDNEW
1 #! /usr/bin/env python 1 #! /usr/bin/env python
2 # 2 #
3 # Protocol Buffers - Google's data interchange format 3 # Protocol Buffers - Google's data interchange format
4 # Copyright 2008 Google Inc. All rights reserved. 4 # Copyright 2008 Google Inc. All rights reserved.
5 # https://developers.google.com/protocol-buffers/ 5 # https://developers.google.com/protocol-buffers/
6 # 6 #
7 # Redistribution and use in source and binary forms, with or without 7 # Redistribution and use in source and binary forms, with or without
8 # modification, are permitted provided that the following conditions are 8 # modification, are permitted provided that the following conditions are
9 # met: 9 # met:
10 # 10 #
(...skipping 21 matching lines...) Expand all
32 32
33 """Tests for google.protobuf.symbol_database.""" 33 """Tests for google.protobuf.symbol_database."""
34 34
35 try: 35 try:
36 import unittest2 as unittest #PY26 36 import unittest2 as unittest #PY26
37 except ImportError: 37 except ImportError:
38 import unittest 38 import unittest
39 39
40 from google.protobuf import unittest_pb2 40 from google.protobuf import unittest_pb2
41 from google.protobuf import descriptor 41 from google.protobuf import descriptor
42 from google.protobuf import descriptor_pool
42 from google.protobuf import symbol_database 43 from google.protobuf import symbol_database
43 44
45
44 class SymbolDatabaseTest(unittest.TestCase): 46 class SymbolDatabaseTest(unittest.TestCase):
45 47
46 def _Database(self): 48 def _Database(self):
47 # TODO(b/17734095): Remove this difference when the C++ implementation
48 # supports multiple databases.
49 if descriptor._USE_C_DESCRIPTORS: 49 if descriptor._USE_C_DESCRIPTORS:
50 return symbol_database.Default() 50 # The C++ implementation does not allow mixing descriptors from
51 # different pools.
52 db = symbol_database.SymbolDatabase(pool=descriptor_pool.Default())
51 else: 53 else:
52 db = symbol_database.SymbolDatabase() 54 db = symbol_database.SymbolDatabase()
53 # Register representative types from unittest_pb2. 55 # Register representative types from unittest_pb2.
54 db.RegisterFileDescriptor(unittest_pb2.DESCRIPTOR) 56 db.RegisterFileDescriptor(unittest_pb2.DESCRIPTOR)
55 db.RegisterMessage(unittest_pb2.TestAllTypes) 57 db.RegisterMessage(unittest_pb2.TestAllTypes)
56 db.RegisterMessage(unittest_pb2.TestAllTypes.NestedMessage) 58 db.RegisterMessage(unittest_pb2.TestAllTypes.NestedMessage)
57 db.RegisterMessage(unittest_pb2.TestAllTypes.OptionalGroup) 59 db.RegisterMessage(unittest_pb2.TestAllTypes.OptionalGroup)
58 db.RegisterMessage(unittest_pb2.TestAllTypes.RepeatedGroup) 60 db.RegisterMessage(unittest_pb2.TestAllTypes.RepeatedGroup)
59 db.RegisterEnumDescriptor(unittest_pb2.ForeignEnum.DESCRIPTOR) 61 db.RegisterEnumDescriptor(unittest_pb2.ForeignEnum.DESCRIPTOR)
60 db.RegisterEnumDescriptor(unittest_pb2.TestAllTypes.NestedEnum.DESCRIPTOR) 62 db.RegisterEnumDescriptor(unittest_pb2.TestAllTypes.NestedEnum.DESCRIPTOR)
61 return db 63 return db
62 64
63 def testGetPrototype(self): 65 def testGetPrototype(self):
64 instance = self._Database().GetPrototype( 66 instance = self._Database().GetPrototype(
65 unittest_pb2.TestAllTypes.DESCRIPTOR) 67 unittest_pb2.TestAllTypes.DESCRIPTOR)
66 self.assertTrue(instance is unittest_pb2.TestAllTypes) 68 self.assertTrue(instance is unittest_pb2.TestAllTypes)
67 69
68 def testGetMessages(self): 70 def testGetMessages(self):
69 messages = self._Database().GetMessages( 71 messages = self._Database().GetMessages(
70 ['google/protobuf/unittest.proto']) 72 ['google/protobuf/unittest.proto'])
71 self.assertTrue( 73 self.assertTrue(
(...skipping 48 matching lines...) Expand 10 before | Expand all | Expand 10 after
120 122
121 def testFindFileByName(self): 123 def testFindFileByName(self):
122 self.assertEqual( 124 self.assertEqual(
123 'google/protobuf/unittest.proto', 125 'google/protobuf/unittest.proto',
124 self._Database().pool.FindFileByName( 126 self._Database().pool.FindFileByName(
125 'google/protobuf/unittest.proto').name) 127 'google/protobuf/unittest.proto').name)
126 128
127 129
128 if __name__ == '__main__': 130 if __name__ == '__main__':
129 unittest.main() 131 unittest.main()
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698