| Index: tools/json_schema_compiler/cpp_type_generator_test.py
|
| diff --git a/tools/json_schema_compiler/cpp_type_generator_test.py b/tools/json_schema_compiler/cpp_type_generator_test.py
|
| index 4770fe3cdce78dd52d4ba5d505373f572fcd2600..708bd464cf16c90c3d108238bddc5105d73cef48 100755
|
| --- a/tools/json_schema_compiler/cpp_type_generator_test.py
|
| +++ b/tools/json_schema_compiler/cpp_type_generator_test.py
|
| @@ -27,6 +27,14 @@ class CppTypeGeneratorTest(unittest.TestCase):
|
| self.model.AddNamespace(self.browser_action_json[0],
|
| 'path/to/browserAction.json')
|
| self.browser_action = self.model.namespaces.get('browserAction')
|
| + self.font_settings_json = CachedLoad('test/fontSettings.json')
|
| + self.model.AddNamespace(self.font_settings_json[0],
|
| + 'path/to/fontSettings.json')
|
| + self.font_settings = self.model.namespaces.get('fontSettings')
|
| + self.dependency_tester_json = CachedLoad('test/dependencyTester.json')
|
| + self.model.AddNamespace(self.dependency_tester_json[0],
|
| + 'path/to/dependencyTester.json')
|
| + self.dependency_tester = self.model.namespaces.get('dependencyTester')
|
|
|
| def testGenerateIncludesAndForwardDeclarations(self):
|
| manager = CppTypeGenerator('', self.windows, self.windows.unix_name)
|
| @@ -71,6 +79,32 @@ class CppTypeGeneratorTest(unittest.TestCase):
|
| '} // windows',
|
| manager.GenerateForwardDeclarations().Render())
|
|
|
| + def testGenerateIncludesAndForwardDeclarationsDependencies(self):
|
| + m = model.Model()
|
| + browser_action_namespace = m.AddNamespace(self.browser_action_json[0],
|
| + 'path/to/browserAction.json')
|
| + font_settings_namespace = m.AddNamespace(self.font_settings_json[0],
|
| + 'path/to/fontSettings.json')
|
| + manager = CppTypeGenerator('', self.dependency_tester,
|
| + self.dependency_tester.unix_name)
|
| + manager.AddNamespace(browser_action_namespace,
|
| + self.browser_action.unix_name)
|
| + manager.AddNamespace(font_settings_namespace,
|
| + self.font_settings.unix_name)
|
| + self.assertEquals('#include "path/to/browser_action.h"\n'
|
| + '#include "path/to/font_settings.h"',
|
| + manager.GenerateIncludes().Render())
|
| + self.assertEquals(
|
| + 'namespace browserAction {\n'
|
| + 'typedef std::vector<int> ColorArray;\n'
|
| + '}\n'
|
| + 'namespace fontSettings {\n'
|
| + 'typedef std::string ScriptCode;\n'
|
| + '}\n'
|
| + 'namespace dependency_tester {\n'
|
| + '} // dependency_tester',
|
| + manager.GenerateForwardDeclarations().Render())
|
| +
|
| def testChoicesEnum(self):
|
| manager = CppTypeGenerator('', self.tabs, self.tabs.unix_name)
|
| prop = self.tabs.functions['move'].params[0]
|
| @@ -93,6 +127,13 @@ class CppTypeGeneratorTest(unittest.TestCase):
|
| manager.GetType(
|
| self.tabs.types['Tab'].properties['selected']))
|
|
|
| + def testStringAsType(self):
|
| + manager = CppTypeGenerator('', self.font_settings,
|
| + self.font_settings.unix_name)
|
| + self.assertEquals('std::string',
|
| + manager.GetType(
|
| + self.font_settings.types['ScriptCode']))
|
| +
|
| def testArrayAsType(self):
|
| manager = CppTypeGenerator('', self.browser_action,
|
| self.browser_action.unix_name)
|
|
|