Chromium Code Reviews| Index: chrome/common/extensions/docs/server2/api_data_source_test.py |
| diff --git a/chrome/common/extensions/docs/server2/api_data_source_test.py b/chrome/common/extensions/docs/server2/api_data_source_test.py |
| index 471b07ed37fe9c6fdaaf31d6f1923f23887e8e60..447727c59dd58560b986a1bb38e23d3917681f26 100755 |
| --- a/chrome/common/extensions/docs/server2/api_data_source_test.py |
| +++ b/chrome/common/extensions/docs/server2/api_data_source_test.py |
| @@ -9,14 +9,14 @@ import sys |
| import unittest |
| from api_data_source import (APIDataSource, |
| - _JscModel, |
| + _JSCModel, |
| _FormatValue, |
| _RemoveNoDocs) |
| from compiled_file_system import CompiledFileSystem |
| -from docs_server_utils import GetLinkToRefType |
| from file_system import FileNotFoundError |
| from in_memory_object_store import InMemoryObjectStore |
| from local_file_system import LocalFileSystem |
| +from reference_resolver import ReferenceResolver |
| import third_party.json_schema_compiler.json_comment_eater as comment_eater |
| import third_party.json_schema_compiler.model as model |
| @@ -28,10 +28,23 @@ def _GetType(dict_, name): |
| if type_['name'] == name: |
| return type_ |
| -class FakeSamplesDataSource: |
| +class FakeSamplesDataSource(object): |
| def Create(self, request): |
| return {} |
| +class FakeAPIAndListDataSource(object): |
| + def __init__(self, json_data): |
| + self._json = json_data |
| + |
| + def __getitem__(self, key): |
| + if key not in self._json: |
| + raise FileNotFoundError(key) |
| + return self._json[key] |
| + |
| + def GetAllNames(self): |
| + return self._json.keys() |
| + |
| + |
|
not at google - send to devlin
2012/11/02 17:26:48
nit: extra \n
cduvall
2012/11/03 01:30:05
Done.
|
| class APIDataSourceTest(unittest.TestCase): |
| def setUp(self): |
| self._base_path = os.path.join(sys.path[0], 'test_data', 'test_json') |
| @@ -64,15 +77,13 @@ class APIDataSourceTest(unittest.TestCase): |
| self.assertRaises(FileNotFoundError, data_source.get, 'junk') |
| def _LoadJSON(self, filename): |
| - return json.loads(comment_eater.Nom(self._ReadLocalFile(filename)))[0] |
| - |
| - def _ToDictTest(self, filename): |
| - expected_json = json.loads(self._ReadLocalFile('expected_' + filename)) |
| - gen = _JscModel(self._LoadJSON(filename)) |
| - self.assertEquals(expected_json, gen.ToDict()) |
| + return json.loads(comment_eater.Nom(self._ReadLocalFile(filename))) |
| def testCreateId(self): |
| - dict_ = _JscModel(self._LoadJSON('test_file.json')).ToDict() |
| + data_source = FakeAPIAndListDataSource( |
| + self._LoadJSON('test_file_data_source.json')) |
| + dict_ = _JSCModel(self._LoadJSON('test_file.json')[0]).ToDict( |
| + ReferenceResolver(data_source, data_source)) |
| self.assertEquals('type-TypeA', dict_['types'][0]['id']) |
| self.assertEquals('property-TypeA-b', |
| dict_['types'][0]['properties'][0]['id']) |
| @@ -80,18 +91,13 @@ class APIDataSourceTest(unittest.TestCase): |
| self.assertEquals('event-EventA', dict_['events'][0]['id']) |
| def testToDict(self): |
| - self._ToDictTest('test_file.json') |
| - |
| - def testGetLinkToRefType(self): |
| - link = GetLinkToRefType('truthTeller', 'liar.Tab') |
| - self.assertEquals('liar.html#type-Tab', link['href']) |
| - self.assertEquals('liar.Tab', link['text']) |
| - link = GetLinkToRefType('truthTeller', 'Tab') |
| - self.assertEquals('#type-Tab', link['href']) |
| - self.assertEquals('Tab', link['text']) |
| - link = GetLinkToRefType('nay', 'lies.chrome.bookmarks.Tab') |
| - self.assertEquals('lies.chrome.bookmarks.html#type-Tab', link['href']) |
| - self.assertEquals('lies.chrome.bookmarks.Tab', link['text']) |
| + filename = 'test_file.json' |
| + expected_json = self._LoadJSON('expected_' + filename) |
| + data_source = FakeAPIAndListDataSource( |
| + self._LoadJSON('test_file_data_source.json')) |
| + gen = _JSCModel(self._LoadJSON(filename)[0]) |
| + self.assertEquals(expected_json, gen.ToDict( |
| + ReferenceResolver(data_source, data_source))) |
| def testFormatValue(self): |
| self.assertEquals('1,234,567', _FormatValue(1234567)) |
| @@ -99,7 +105,10 @@ class APIDataSourceTest(unittest.TestCase): |
| self.assertEquals('234,567', _FormatValue(234567)) |
| def testFormatDescription(self): |
| - dict_ = _JscModel(self._LoadJSON('ref_test.json')).ToDict() |
| + data_source = FakeAPIAndListDataSource( |
| + self._LoadJSON('ref_test_data_source.json')) |
| + dict_ = _JSCModel(self._LoadJSON('ref_test.json')[0]).ToDict( |
| + ReferenceResolver(data_source, data_source)) |
| self.assertEquals(_MakeLink('#type-type2', 'type2'), |
| _GetType(dict_, 'type1')['description']) |
| self.assertEquals( |
| @@ -112,9 +121,9 @@ class APIDataSourceTest(unittest.TestCase): |
| _GetType(dict_, 'type3')['description']) |
| def testRemoveNoDocs(self): |
| - d = json.loads(self._ReadLocalFile('nodoc_test.json')) |
| + d = self._LoadJSON('nodoc_test.json') |
| _RemoveNoDocs(d) |
| - self.assertEqual(json.loads(self._ReadLocalFile('expected_nodoc.json')), d) |
| + self.assertEqual(self._LoadJSON('expected_nodoc.json'), d) |
| if __name__ == '__main__': |
| unittest.main() |