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

Unified Diff: tools/json_schema_compiler/cpp_type_generator_test.py

Issue 487533005: Add support for references in different paths in apis (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 6 years, 4 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 f3a760a2adcf5833aa3165bc87776e5231ae669a..2ab597c866c1ef75028fd2fa681e1da4108601b8 100755
--- a/tools/json_schema_compiler/cpp_type_generator_test.py
+++ b/tools/json_schema_compiler/cpp_type_generator_test.py
@@ -3,6 +3,7 @@
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.
+from cpp_namespace_environment import CppNamespaceEnvironment
from cpp_type_generator import CppTypeGenerator
from json_schema import CachedLoad
import model
@@ -51,8 +52,12 @@ class CppTypeGeneratorTest(unittest.TestCase):
def testGenerateIncludesAndForwardDeclarations(self):
m = model.Model()
- m.AddNamespace(self.windows_json[0], 'path/to/windows.json')
- m.AddNamespace(self.tabs_json[0], 'path/to/tabs.json')
+ m.AddNamespace(self.windows_json[0],
+ 'path/to/windows.json',
+ environment=CppNamespaceEnvironment('%(namespace)s'))
+ m.AddNamespace(self.tabs_json[0],
+ 'path/to/tabs.json',
+ environment=CppNamespaceEnvironment('%(namespace)s'))
manager = CppTypeGenerator(m, _FakeSchemaLoader(m))
self.assertEquals('', manager.GenerateIncludes().Render())
@@ -62,7 +67,18 @@ class CppTypeGeneratorTest(unittest.TestCase):
'namespace tabs {\n'
'struct Tab;\n'
'} // namespace tabs',
- manager.GenerateForwardDeclarations('%(namespace)s').Render())
+ manager.GenerateForwardDeclarations().Render())
+
+ m = model.Model()
+ m.AddNamespace(self.windows_json[0],
+ 'path/to/windows.json',
+ environment=CppNamespaceEnvironment(
+ 'foo::bar::%(namespace)s'))
+ m.AddNamespace(self.tabs_json[0],
+ 'path/to/tabs.json',
+ environment=CppNamespaceEnvironment(
+ 'foo::bar::%(namespace)s'))
+ manager = CppTypeGenerator(m, _FakeSchemaLoader(m))
self.assertEquals(
'namespace foo {\n'
'namespace bar {\n'
@@ -71,13 +87,12 @@ class CppTypeGeneratorTest(unittest.TestCase):
'} // namespace tabs\n'
'} // namespace bar\n'
'} // namespace foo',
- manager.GenerateForwardDeclarations('foo::bar::%(namespace)s').Render())
+ manager.GenerateForwardDeclarations().Render())
manager = CppTypeGenerator(self.models.get('permissions'),
_FakeSchemaLoader(m))
self.assertEquals('', manager.GenerateIncludes().Render())
self.assertEquals('', manager.GenerateIncludes().Render())
- self.assertEquals(
- '', manager.GenerateForwardDeclarations('%(namespace)s').Render())
+ self.assertEquals('', manager.GenerateForwardDeclarations().Render())
manager = CppTypeGenerator(self.models.get('content_settings'),
_FakeSchemaLoader(m))
self.assertEquals('', manager.GenerateIncludes().Render())
@@ -87,7 +102,8 @@ class CppTypeGeneratorTest(unittest.TestCase):
# Insert 'font_settings' before 'browser_action' in order to test that
# CppTypeGenerator sorts them properly.
m.AddNamespace(self.font_settings_json[0], 'path/to/font_settings.json')
- m.AddNamespace(self.browser_action_json[0], 'path/to/browser_action.json')
+ m.AddNamespace(
+ self.browser_action_json[0], 'path/to/browser_action.json')
not at google - send to devlin 2014/08/26 20:16:06 Put this back as 1 line?
lfg 2014/08/26 21:18:43 Done.
dependency_tester = m.AddNamespace(self.dependency_tester_json[0],
'path/to/dependency_tester.json')
manager = CppTypeGenerator(m,
@@ -97,7 +113,7 @@ class CppTypeGeneratorTest(unittest.TestCase):
'#include "path/to/font_settings.h"',
manager.GenerateIncludes().Render())
self.assertEquals(
- '', manager.GenerateForwardDeclarations('%(namespace)s').Render())
+ '', manager.GenerateForwardDeclarations().Render())
not at google - send to devlin 2014/08/26 20:16:06 Can this be a single line?
lfg 2014/08/26 21:18:43 Done.
def testGetCppTypeSimple(self):
manager = CppTypeGenerator(self.models.get('tabs'), _FakeSchemaLoader(None))
@@ -147,8 +163,12 @@ class CppTypeGeneratorTest(unittest.TestCase):
def testGetCppTypeIncludedRef(self):
m = model.Model()
- m.AddNamespace(self.windows_json[0], 'path/to/windows.json')
- m.AddNamespace(self.tabs_json[0], 'path/to/tabs.json')
+ m.AddNamespace(self.windows_json[0],
+ 'path/to/windows.json',
+ environment=CppNamespaceEnvironment('%(namespace)s'))
+ m.AddNamespace(self.tabs_json[0],
+ 'path/to/tabs.json',
+ environment=CppNamespaceEnvironment('%(namespace)s'))
manager = CppTypeGenerator(m, _FakeSchemaLoader(m))
self.assertEquals(
'std::vector<linked_ptr<tabs::Tab> >',

Powered by Google App Engine
This is Rietveld 408576698