| OLD | NEW | 
|    1 #!/usr/bin/env python |    1 #!/usr/bin/env python | 
|    2 # Copyright 2014 The Chromium Authors. All rights reserved. |    2 # Copyright 2014 The Chromium Authors. All rights reserved. | 
|    3 # Use of this source code is governed by a BSD-style license that can be |    3 # Use of this source code is governed by a BSD-style license that can be | 
|    4 # found in the LICENSE file. |    4 # found in the LICENSE file. | 
|    5  |    5  | 
|    6 """Tests for enum_preprocess.py. |    6 """Tests for enum_preprocess.py. | 
|    7  |    7  | 
|    8 This test suite containss various tests for the C++ -> Java enum generator. |    8 This test suite containss various tests for the C++ -> Java enum generator. | 
|    9 """ |    9 """ | 
|   10  |   10  | 
| (...skipping 205 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
|  216   def testParseUnknownFixedTypeRaises(self): |  216   def testParseUnknownFixedTypeRaises(self): | 
|  217     test_data = """ |  217     test_data = """ | 
|  218       // GENERATED_JAVA_ENUM_PACKAGE: test.namespace |  218       // GENERATED_JAVA_ENUM_PACKAGE: test.namespace | 
|  219       enum class Foo: foo_type { |  219       enum class Foo: foo_type { | 
|  220         FOO_A, |  220         FOO_A, | 
|  221       }; |  221       }; | 
|  222     """.split('\n') |  222     """.split('\n') | 
|  223     with self.assertRaises(Exception): |  223     with self.assertRaises(Exception): | 
|  224       HeaderParser(test_data).ParseDefinitions() |  224       HeaderParser(test_data).ParseDefinitions() | 
|  225  |  225  | 
 |  226   def testParseSimpleMultiLineDirective(self): | 
 |  227     test_data = """ | 
 |  228       // GENERATED_JAVA_ENUM_PACKAGE: \\ | 
 |  229       //   test.namespace | 
 |  230       // GENERATED_JAVA_CLASS_NAME_OVERRIDE: Bar | 
 |  231       enum Foo { | 
 |  232         FOO_A, | 
 |  233       }; | 
 |  234     """.split('\n') | 
 |  235     definitions = HeaderParser(test_data).ParseDefinitions() | 
 |  236     self.assertEqual('test.namespace', definitions[0].enum_package) | 
 |  237     self.assertEqual('Bar', definitions[0].class_name) | 
 |  238  | 
 |  239   def testParseMultiLineDirective(self): | 
 |  240     test_data = """ | 
 |  241       // GENERATED_JAVA_ENUM_PACKAGE: te\\ | 
 |  242       //   st.name\\ | 
 |  243       //   space | 
 |  244       enum Foo { | 
 |  245         FOO_A, | 
 |  246       }; | 
 |  247     """.split('\n') | 
 |  248     definitions = HeaderParser(test_data).ParseDefinitions() | 
 |  249     self.assertEqual('test.namespace', definitions[0].enum_package) | 
 |  250  | 
 |  251   def testParseMultiLineDirectiveWithOtherDirective(self): | 
 |  252     test_data = """ | 
 |  253       // GENERATED_JAVA_ENUM_PACKAGE: \\ | 
 |  254       //   test.namespace | 
 |  255       // GENERATED_JAVA_CLASS_NAME_OVERRIDE: \\ | 
 |  256       //   Ba\\ | 
 |  257       //   r | 
 |  258       enum Foo { | 
 |  259         FOO_A, | 
 |  260       }; | 
 |  261     """.split('\n') | 
 |  262     definitions = HeaderParser(test_data).ParseDefinitions() | 
 |  263     self.assertEqual('test.namespace', definitions[0].enum_package) | 
 |  264     self.assertEqual('Bar', definitions[0].class_name) | 
 |  265  | 
 |  266   def testParseMalformedMultiLineDirectiveWithOtherDirective(self): | 
 |  267     test_data = """ | 
 |  268       // GENERATED_JAVA_ENUM_PACKAGE: \\ | 
 |  269       //   test.name\\ | 
 |  270       //   space\\ | 
 |  271       // GENERATED_JAVA_CLASS_NAME_OVERRIDE: Bar | 
 |  272       enum Foo { | 
 |  273         FOO_A, | 
 |  274       }; | 
 |  275     """.split('\n') | 
 |  276     with self.assertRaises(Exception): | 
 |  277       HeaderParser(test_data).ParseDefinitions() | 
 |  278  | 
 |  279   def testParseMalformedMultiLineDirective(self): | 
 |  280     test_data = """ | 
 |  281       // GENERATED_JAVA_ENUM_PACKAGE: \\ | 
 |  282       //   test.name\\ | 
 |  283       //   space\\ | 
 |  284       enum Foo { | 
 |  285         FOO_A, | 
 |  286       }; | 
 |  287     """.split('\n') | 
 |  288     with self.assertRaises(Exception): | 
 |  289       HeaderParser(test_data).ParseDefinitions() | 
 |  290  | 
 |  291   def testParseMalformedMultiLineDirectiveShort(self): | 
 |  292     test_data = """ | 
 |  293       // GENERATED_JAVA_ENUM_PACKAGE: \\ | 
 |  294       enum Foo { | 
 |  295         FOO_A, | 
 |  296       }; | 
 |  297     """.split('\n') | 
 |  298     with self.assertRaises(Exception): | 
 |  299       HeaderParser(test_data).ParseDefinitions() | 
 |  300  | 
|  226   def testEnumValueAssignmentNoneDefined(self): |  301   def testEnumValueAssignmentNoneDefined(self): | 
|  227     definition = EnumDefinition(original_enum_name='c', enum_package='p') |  302     definition = EnumDefinition(original_enum_name='c', enum_package='p') | 
|  228     definition.AppendEntry('A', None) |  303     definition.AppendEntry('A', None) | 
|  229     definition.AppendEntry('B', None) |  304     definition.AppendEntry('B', None) | 
|  230     definition.AppendEntry('C', None) |  305     definition.AppendEntry('C', None) | 
|  231     definition.Finalize() |  306     definition.Finalize() | 
|  232     self.assertEqual(collections.OrderedDict([('A', 0), |  307     self.assertEqual(collections.OrderedDict([('A', 0), | 
|  233                                               ('B', 1), |  308                                               ('B', 1), | 
|  234                                               ('C', 2)]), |  309                                               ('C', 2)]), | 
|  235                      definition.entries) |  310                      definition.entries) | 
| (...skipping 97 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
|  333   options, _ = parser.parse_args(argv) |  408   options, _ = parser.parse_args(argv) | 
|  334  |  409  | 
|  335   suite = unittest.TestLoader().loadTestsFromTestCase(TestPreprocess) |  410   suite = unittest.TestLoader().loadTestsFromTestCase(TestPreprocess) | 
|  336   unittest.TextTestRunner(verbosity=0).run(suite) |  411   unittest.TextTestRunner(verbosity=0).run(suite) | 
|  337  |  412  | 
|  338   if options.stamp: |  413   if options.stamp: | 
|  339     build_utils.Touch(options.stamp) |  414     build_utils.Touch(options.stamp) | 
|  340  |  415  | 
|  341 if __name__ == '__main__': |  416 if __name__ == '__main__': | 
|  342   main(sys.argv[1:]) |  417   main(sys.argv[1:]) | 
| OLD | NEW |