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

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

Issue 11826020: IDL schema compiler: Fixed pseudo-random order (Closed) Base URL: http://git.chromium.org/chromium/src.git@master
Patch Set: Incorporate upstream changes. Created 7 years, 11 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
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 import idl_schema 6 import idl_schema
7 import unittest 7 import unittest
8 8
9 def getFunction(schema, name): 9 def getFunction(schema, name):
10 for item in schema['functions']: 10 for item in schema['functions']:
(...skipping 42 matching lines...) Expand 10 before | Expand all | Expand 10 after
53 schema = idl_schema.Load('test/idl_callback_arrays.idl')[0] 53 schema = idl_schema.Load('test/idl_callback_arrays.idl')[0]
54 expected = [{'type':'array', 'name':'callbacks', 54 expected = [{'type':'array', 'name':'callbacks',
55 'items':{'type':'function', 'name':'MyCallback', 55 'items':{'type':'function', 'name':'MyCallback',
56 'parameters':[{'type':'integer', 'name':'x'}]}}] 56 'parameters':[{'type':'integer', 'name':'x'}]}}]
57 self.assertEquals(expected, getParams(schema, 'whatever')) 57 self.assertEquals(expected, getParams(schema, 'whatever'))
58 58
59 def testLegalValues(self): 59 def testLegalValues(self):
60 self.assertEquals({ 60 self.assertEquals({
61 'x': {'name': 'x', 'type': 'integer', 'enum': [1,2], 61 'x': {'name': 'x', 'type': 'integer', 'enum': [1,2],
62 'description': 'This comment tests "double-quotes".'}, 62 'description': 'This comment tests "double-quotes".'},
63 'y': {'name': 'y', 'type': 'string'}}, 63 'y': {'name': 'y', 'type': 'string'},
64 'z': {'name': 'z', 'type': 'string'},
65 'a': {'name': 'a', 'type': 'string'},
66 'b': {'name': 'b', 'type': 'string'},
67 'c': {'name': 'c', 'type': 'string'}},
64 getType(self.idl_basics, 'MyType1')['properties']) 68 getType(self.idl_basics, 'MyType1')['properties'])
65 69
70 def testMemberOrdering(self):
71 self.assertEquals(
72 ['x', 'y', 'z', 'a', 'b', 'c'],
73 getType(self.idl_basics, 'MyType1')['properties'].keys())
74
66 def testEnum(self): 75 def testEnum(self):
67 schema = self.idl_basics 76 schema = self.idl_basics
68 expected = {'enum': ['name1', 'name2'], 'description': 'Enum description', 77 expected = {'enum': ['name1', 'name2'], 'description': 'Enum description',
69 'type': 'string', 'id': 'EnumType'} 78 'type': 'string', 'id': 'EnumType'}
70 self.assertEquals(expected, getType(schema, expected['id'])) 79 self.assertEquals(expected, getType(schema, expected['id']))
71 80
72 expected = [{'name':'type', '$ref':'EnumType'}, 81 expected = [{'name':'type', '$ref':'EnumType'},
73 {'type':'function', 'name':'cb', 82 {'type':'function', 'name':'cb',
74 'parameters':[{'name':'type', '$ref':'EnumType'}]}] 83 'parameters':[{'name':'type', '$ref':'EnumType'}]}]
75 self.assertEquals(expected, getParams(schema, 'function13')) 84 self.assertEquals(expected, getParams(schema, 'function13'))
(...skipping 59 matching lines...) Expand 10 before | Expand all | Expand 10 after
135 144
136 mytype = getType(schema, 'MyType') 145 mytype = getType(schema, 'MyType')
137 self.assertEquals('string', mytype['properties']['interface']['type']) 146 self.assertEquals('string', mytype['properties']['interface']['type'])
138 147
139 params = getParams(schema, 'static') 148 params = getParams(schema, 'static')
140 self.assertEquals('Foo', params[0]['$ref']) 149 self.assertEquals('Foo', params[0]['$ref'])
141 self.assertEquals('enum', params[1]['$ref']) 150 self.assertEquals('enum', params[1]['$ref'])
142 151
143 if __name__ == '__main__': 152 if __name__ == '__main__':
144 unittest.main() 153 unittest.main()
OLDNEW
« no previous file with comments | « tools/json_schema_compiler/idl_schema.py ('k') | tools/json_schema_compiler/test/idl_basics.idl » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698