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

Unified Diff: tools/json_schema_compiler/cpp_type_generator_test.py

Issue 12041098: Initial commit of the Dart Chrome Extension APIs generators (Closed) Base URL: http://git.chromium.org/chromium/src.git@file_path_bugfix
Patch Set: Fixed .gyp files to reflect new filenames Created 7 years, 10 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/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 37d9d9ba7f2f05fbf70c3e48fb0da725649d9e73..918bbfe89b1713f37f856a0c33cb1a81a78060ca 100755
--- a/tools/json_schema_compiler/cpp_type_generator_test.py
+++ b/tools/json_schema_compiler/cpp_type_generator_test.py
@@ -8,44 +8,39 @@ from json_schema import CachedLoad
import model
import unittest
+from collections import defaultdict
+
class CppTypeGeneratorTest(unittest.TestCase):
def setUp(self):
- self.model = model.Model()
+ self.models = defaultdict(model.Model)
+
self.forbidden_json = CachedLoad('test/forbidden.json')
- self.model.AddNamespace(self.forbidden_json[0],
- 'path/to/forbidden.json')
- self.forbidden = self.model.namespaces.get('forbidden')
+ self.forbidden = self.models['forbidden'].AddNamespace(
+ self.forbidden_json[0], 'path/to/forbidden.json')
self.permissions_json = CachedLoad('test/permissions.json')
- self.model.AddNamespace(self.permissions_json[0],
- 'path/to/permissions.json')
- self.permissions = self.model.namespaces.get('permissions')
+ self.permissions = self.models['permissions'].AddNamespace(
+ self.permissions_json[0], 'path/to/permissions.json')
self.windows_json = CachedLoad('test/windows.json')
- self.model.AddNamespace(self.windows_json[0],
- 'path/to/window.json')
- self.windows = self.model.namespaces.get('windows')
+ self.windows = self.models['windows'].AddNamespace(self.windows_json[0],
+ 'path/to/window.json')
self.tabs_json = CachedLoad('test/tabs.json')
- self.model.AddNamespace(self.tabs_json[0],
- 'path/to/tabs.json')
- self.tabs = self.model.namespaces.get('tabs')
+ self.tabs = self.models['tabs'].AddNamespace(self.tabs_json[0],
+ 'path/to/tabs.json')
self.browser_action_json = CachedLoad('test/browser_action.json')
- self.model.AddNamespace(self.browser_action_json[0],
- 'path/to/browser_action.json')
- self.browser_action = self.model.namespaces.get('browserAction')
+ self.browser_action = self.models['browser_action'].AddNamespace(
+ self.browser_action_json[0], 'path/to/browser_action.json')
self.font_settings_json = CachedLoad('test/font_settings.json')
- self.model.AddNamespace(self.font_settings_json[0],
- 'path/to/font_settings.json')
- self.font_settings = self.model.namespaces.get('fontSettings')
+ self.font_settings = self.models['font_settings'].AddNamespace(
+ self.font_settings_json[0], 'path/to/font_settings.json')
self.dependency_tester_json = CachedLoad('test/dependency_tester.json')
- self.model.AddNamespace(self.dependency_tester_json[0],
- 'path/to/dependency_tester.json')
- self.dependency_tester = self.model.namespaces.get('dependencyTester')
+ self.dependency_tester = self.models['dependency_tester'].AddNamespace(
+ self.dependency_tester_json[0], 'path/to/dependency_tester.json')
self.content_settings_json = CachedLoad('test/content_settings.json')
- self.model.AddNamespace(self.content_settings_json[0],
- 'path/to/content_settings.json')
- self.content_settings = self.model.namespaces.get('contentSettings')
+ self.content_settings = self.models['content_settings'].AddNamespace(
+ self.content_settings_json[0], 'path/to/content_settings.json')
def testGenerateIncludesAndForwardDeclarations(self):
- manager = CppTypeGenerator('', self.windows, self.windows.unix_name)
+ manager = CppTypeGenerator(self.models.get('windows'))
manager.AddNamespace(self.tabs, self.tabs.unix_name)
self.assertEquals('', manager.GenerateIncludes().Render())
self.assertEquals('#include "path/to/tabs.h"',
@@ -54,12 +49,11 @@ class CppTypeGeneratorTest(unittest.TestCase):
'struct Tab;\n'
'}',
manager.GenerateForwardDeclarations().Render())
- manager = CppTypeGenerator('', self.permissions, self.permissions.unix_name)
+ manager = CppTypeGenerator(self.models.get('permissions'))
self.assertEquals('', manager.GenerateIncludes().Render())
self.assertEquals('', manager.GenerateIncludes().Render())
self.assertEquals('', manager.GenerateForwardDeclarations().Render())
- manager = CppTypeGenerator('', self.content_settings,
- self.content_settings.unix_name)
+ manager = CppTypeGenerator(self.models.get('content_settings'))
self.assertEquals('', manager.GenerateIncludes().Render())
def testGenerateIncludesAndForwardDeclarationsDependencies(self):
@@ -70,10 +64,8 @@ class CppTypeGeneratorTest(unittest.TestCase):
'path/to/font_settings.json')
browser_action_namespace = m.AddNamespace(self.browser_action_json[0],
'path/to/browser_action.json')
- manager = CppTypeGenerator('', self.dependency_tester,
- self.dependency_tester.unix_name)
- manager.AddNamespace(font_settings_namespace,
- self.font_settings.unix_name)
+ manager = CppTypeGenerator(self.models.get('dependency_tester'))
+ manager.AddNamespace(font_settings_namespace, self.font_settings.unix_name)
manager.AddNamespace(browser_action_namespace,
self.browser_action.unix_name)
self.assertEquals('#include "path/to/browser_action.h"\n'
@@ -86,7 +78,7 @@ class CppTypeGeneratorTest(unittest.TestCase):
manager.GenerateForwardDeclarations().Render())
def testGetCppTypeSimple(self):
- manager = CppTypeGenerator('', self.tabs, self.tabs.unix_name)
+ manager = CppTypeGenerator(self.models.get('tabs'))
self.assertEquals(
'int',
manager.GetCppType(self.tabs.types['Tab'].properties['id'].type_))
@@ -98,39 +90,37 @@ class CppTypeGeneratorTest(unittest.TestCase):
manager.GetCppType(self.tabs.types['Tab'].properties['selected'].type_))
def testStringAsType(self):
- manager = CppTypeGenerator('', self.font_settings,
- self.font_settings.unix_name)
+ manager = CppTypeGenerator(self.models.get('font_settings'))
self.assertEquals(
'std::string',
manager.GetCppType(self.font_settings.types['FakeStringType']))
def testArrayAsType(self):
- manager = CppTypeGenerator('', self.browser_action,
- self.browser_action.unix_name)
+ manager = CppTypeGenerator(self.models.get('browser_action'))
self.assertEquals(
'std::vector<int>',
manager.GetCppType(self.browser_action.types['ColorArray']))
def testGetCppTypeArray(self):
- manager = CppTypeGenerator('', self.windows, self.windows.unix_name)
+ manager = CppTypeGenerator(self.models.get('windows'))
self.assertEquals(
'std::vector<linked_ptr<Window> >',
manager.GetCppType(
self.windows.functions['getAll'].callback.params[0].type_))
- manager = CppTypeGenerator('', self.permissions, self.permissions.unix_name)
+ manager = CppTypeGenerator(self.models.get('permissions'))
self.assertEquals(
'std::vector<std::string>',
manager.GetCppType(
self.permissions.types['Permissions'].properties['origins'].type_))
def testGetCppTypeLocalRef(self):
- manager = CppTypeGenerator('', self.tabs, self.tabs.unix_name)
+ manager = CppTypeGenerator(self.models.get('tabs'))
self.assertEquals(
'Tab',
manager.GetCppType(self.tabs.functions['get'].callback.params[0].type_))
def testGetCppTypeIncludedRef(self):
- manager = CppTypeGenerator('', self.windows, self.windows.unix_name)
+ manager = CppTypeGenerator(self.models.get('windows'))
manager.AddNamespace(self.tabs, self.tabs.unix_name)
self.assertEquals(
'std::vector<linked_ptr<tabs::Tab> >',
@@ -138,7 +128,7 @@ class CppTypeGeneratorTest(unittest.TestCase):
self.windows.types['Window'].properties['tabs'].type_))
def testGetCppTypeWithPadForGeneric(self):
- manager = CppTypeGenerator('', self.permissions, self.permissions.unix_name)
+ manager = CppTypeGenerator(self.models.get('permissions'))
self.assertEquals('std::vector<std::string>',
manager.GetCppType(
self.permissions.types['Permissions'].properties['origins'].type_,
@@ -153,13 +143,12 @@ class CppTypeGeneratorTest(unittest.TestCase):
is_in_container=True))
def testNamespaceDeclaration(self):
- manager = CppTypeGenerator('extensions', self.permissions,
- self.permissions.unix_name)
+ manager = CppTypeGenerator(self.models.get('permissions'), 'extensions')
self.assertEquals('namespace extensions {',
manager.GetRootNamespaceStart().Render())
- manager = CppTypeGenerator('extensions::gen::api', self.permissions,
- self.permissions.unix_name)
+ manager = CppTypeGenerator(self.models.get('permissions'),
+ 'extensions::gen::api')
self.assertEquals('namespace permissions {',
manager.GetNamespaceStart().Render())
self.assertEquals('} // permissions',

Powered by Google App Engine
This is Rietveld 408576698