| Index: tools/json_schema_compiler/schema_util_test.py
|
| diff --git a/tools/json_schema_compiler/schema_util_test.py b/tools/json_schema_compiler/schema_util_test.py
|
| new file mode 100755
|
| index 0000000000000000000000000000000000000000..ecdd17c025c4b610a7de498ba092a9b7fb5afa9a
|
| --- /dev/null
|
| +++ b/tools/json_schema_compiler/schema_util_test.py
|
| @@ -0,0 +1,67 @@
|
| +#!/usr/bin/env python
|
| +# Copyright (c) 2012 The Chromium Authors. All rights reserved.
|
| +# Use of this source code is governed by a BSD-style license that can be
|
| +# found in the LICENSE file.
|
| +
|
| +import schema_util
|
| +import unittest
|
| +
|
| +class SchemaUtilTest(unittest.TestCase):
|
| + def testStripSchemaNamespace(self):
|
| + self.assertEquals('Bar', schema_util.StripSchemaNamespace('foo.Bar'))
|
| + self.assertEquals('Baz', schema_util.StripSchemaNamespace('Baz'))
|
| +
|
| + def testPrefixSchemasWithNamespace(self):
|
| + schemas = [
|
| + { 'namespace': 'n1',
|
| + 'types': [
|
| + {
|
| + 'id': 'T1',
|
| + 'customBindings': 'T1',
|
| + 'properties': {
|
| + 'p1': {'$ref': 'T1'},
|
| + 'p2': {'$ref': 'fully.qualified.T'},
|
| + }
|
| + }
|
| + ],
|
| + 'functions': [
|
| + {
|
| + 'parameters': [
|
| + { '$ref': 'T1' },
|
| + { '$ref': 'fully.qualified.T' },
|
| + ],
|
| + 'returns': { '$ref': 'T1' }
|
| + },
|
| + ],
|
| + 'events': [
|
| + {
|
| + 'parameters': [
|
| + { '$ref': 'T1' },
|
| + { '$ref': 'fully.qualified.T' },
|
| + ],
|
| + },
|
| + ],
|
| + },
|
| + ]
|
| + schema_util.PrefixSchemasWithNamespace(schemas)
|
| + self.assertEquals('n1.T1', schemas[0]['types'][0]['id'])
|
| + self.assertEquals('n1.T1', schemas[0]['types'][0]['customBindings'])
|
| + self.assertEquals('n1.T1',
|
| + schemas[0]['types'][0]['properties']['p1']['$ref'])
|
| + self.assertEquals('fully.qualified.T',
|
| + schemas[0]['types'][0]['properties']['p2']['$ref'])
|
| +
|
| + self.assertEquals('n1.T1',
|
| + schemas[0]['functions'][0]['parameters'][0]['$ref'])
|
| + self.assertEquals('fully.qualified.T',
|
| + schemas[0]['functions'][0]['parameters'][1]['$ref'])
|
| + self.assertEquals('n1.T1',
|
| + schemas[0]['functions'][0]['returns']['$ref'])
|
| +
|
| + self.assertEquals('n1.T1',
|
| + schemas[0]['events'][0]['parameters'][0]['$ref'])
|
| + self.assertEquals('fully.qualified.T',
|
| + schemas[0]['events'][0]['parameters'][1]['$ref'])
|
| +
|
| +if __name__ == '__main__':
|
| + unittest.main()
|
|
|