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

Side by Side Diff: tools/json_schema_compiler/model_test.py

Issue 273323002: Convert snakecase enum names to camelcase when stringified. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: final changes Created 6 years, 7 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 unified diff | Download patch | Annotate | Revision Log
« no previous file with comments | « tools/json_schema_compiler/model.py ('k') | ui/accessibility/ax_enums.idl » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 #!/usr/bin/env python 1 #!/usr/bin/env python
2 # Copyright (c) 2012 The Chromium Authors. All rights reserved. 2 # Copyright (c) 2012 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 from json_schema import CachedLoad 6 from json_schema import CachedLoad
7 from idl_schema import Load 7 from idl_schema import Load
8 from model import Platforms 8 from model import Platforms
9 import model 9 import model
10 import unittest 10 import unittest
(...skipping 100 matching lines...) Expand 10 before | Expand all | Expand 10 after
111 'FOO': 'foo', 111 'FOO': 'foo',
112 'FOOBar': 'foo_bar', 112 'FOOBar': 'foo_bar',
113 'foo.bar': 'foo_bar', 113 'foo.bar': 'foo_bar',
114 'foo.BAR': 'foo_bar', 114 'foo.BAR': 'foo_bar',
115 'foo.barBAZ': 'foo_bar_baz', 115 'foo.barBAZ': 'foo_bar_baz',
116 'foo_Bar_Baz_box': 'foo_bar_baz_box', 116 'foo_Bar_Baz_box': 'foo_bar_baz_box',
117 } 117 }
118 for name in expectations: 118 for name in expectations:
119 self.assertEquals(expectations[name], model.UnixName(name)) 119 self.assertEquals(expectations[name], model.UnixName(name))
120 120
121 def testCamelName(self):
122 expectations = {
123 'foo': 'foo',
124 'fooBar': 'fooBar',
125 'foo_bar_baz': 'fooBarBaz',
126 'FOO_BAR': 'FOOBar',
127 'FOO_bar': 'FOOBar',
128 '_bar': 'Bar',
129 '_bar_baz': 'BarBaz',
130 'bar_': 'bar',
131 'bar_baz_': 'barBaz',
132 }
133 for testcase, expected in expectations.iteritems():
134 self.assertEquals(expected, model.CamelName(testcase))
135
121 def testPlatforms(self): 136 def testPlatforms(self):
122 self.assertEqual([Platforms.CHROMEOS], 137 self.assertEqual([Platforms.CHROMEOS],
123 self.idl_namespace_chromeos.platforms) 138 self.idl_namespace_chromeos.platforms)
124 self.assertEqual( 139 self.assertEqual(
125 [Platforms.CHROMEOS, Platforms.CHROMEOS_TOUCH, Platforms.LINUX, 140 [Platforms.CHROMEOS, Platforms.CHROMEOS_TOUCH, Platforms.LINUX,
126 Platforms.MAC, Platforms.WIN], 141 Platforms.MAC, Platforms.WIN],
127 self.idl_namespace_all_platforms.platforms) 142 self.idl_namespace_all_platforms.platforms)
128 self.assertEqual(None, 143 self.assertEqual(None,
129 self.idl_namespace_non_specific_platforms.platforms) 144 self.idl_namespace_non_specific_platforms.platforms)
130 145
131 if __name__ == '__main__': 146 if __name__ == '__main__':
132 unittest.main() 147 unittest.main()
OLDNEW
« no previous file with comments | « tools/json_schema_compiler/model.py ('k') | ui/accessibility/ax_enums.idl » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698