| OLD | NEW |
| 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 json | 6 import json |
| 7 import os | 7 import os |
| 8 import sys | 8 import sys |
| 9 import unittest | 9 import unittest |
| 10 | 10 |
| (...skipping 46 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 57 | 57 |
| 58 def Create(self, *args, **kwargs): | 58 def Create(self, *args, **kwargs): |
| 59 return self | 59 return self |
| 60 | 60 |
| 61 def get(self, key, disable_refs=False): | 61 def get(self, key, disable_refs=False): |
| 62 if key not in self._json: | 62 if key not in self._json: |
| 63 raise FileNotFoundError(key) | 63 raise FileNotFoundError(key) |
| 64 return self._json[key] | 64 return self._json[key] |
| 65 | 65 |
| 66 | 66 |
| 67 class _FakeNamespace(object): |
| 68 |
| 69 def __init__(self): |
| 70 self.documentation_options = {} |
| 71 |
| 72 |
| 67 class _FakeAPIModels(object): | 73 class _FakeAPIModels(object): |
| 68 | 74 |
| 69 def __init__(self, names): | 75 def __init__(self, names): |
| 70 self._names = names | 76 self._names = names |
| 71 | 77 |
| 72 def GetNames(self): | 78 def GetNames(self): |
| 73 return self._names | 79 return self._names |
| 74 | 80 |
| 81 def GetModel(self, name): |
| 82 return Future(value=_FakeNamespace()) |
| 83 |
| 75 | 84 |
| 76 class _FakeTemplateCache(object): | 85 class _FakeTemplateCache(object): |
| 77 | 86 |
| 78 def GetFromFile(self, key): | 87 def GetFromFile(self, key): |
| 79 return Future(value='handlebar %s' % key) | 88 return Future(value='handlebar %s' % key) |
| 80 | 89 |
| 81 | 90 |
| 82 class APIDataSourceTest(unittest.TestCase): | 91 class APIDataSourceTest(unittest.TestCase): |
| 83 | 92 |
| 84 def setUp(self): | 93 def setUp(self): |
| (...skipping 68 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 153 def testFormatDescription(self): | 162 def testFormatDescription(self): |
| 154 dict_ = _JSCModel('ref_test', | 163 dict_ = _JSCModel('ref_test', |
| 155 self._api_models, | 164 self._api_models, |
| 156 self._CreateRefResolver('ref_test_data_source.json'), | 165 self._CreateRefResolver('ref_test_data_source.json'), |
| 157 False, | 166 False, |
| 158 _FakeAvailabilityFinder(), | 167 _FakeAvailabilityFinder(), |
| 159 self._json_cache, | 168 self._json_cache, |
| 160 _FakeTemplateCache(), | 169 _FakeTemplateCache(), |
| 161 self._features_bundle, | 170 self._features_bundle, |
| 162 None).ToDict() | 171 None).ToDict() |
| 163 self.assertEquals(_MakeLink('ref_test.html#type-type2', 'type2'), | 172 self.assertEquals(_MakeLink('ref_test#type-type2', 'type2'), |
| 164 _GetType(dict_, 'type1')['description']) | 173 _GetType(dict_, 'type1')['description']) |
| 165 self.assertEquals( | 174 self.assertEquals( |
| 166 'A %s, or %s' % (_MakeLink('ref_test.html#type-type3', 'type3'), | 175 'A %s, or %s' % (_MakeLink('ref_test#type-type3', 'type3'), |
| 167 _MakeLink('ref_test.html#type-type2', 'type2')), | 176 _MakeLink('ref_test#type-type2', 'type2')), |
| 168 _GetType(dict_, 'type2')['description']) | 177 _GetType(dict_, 'type2')['description']) |
| 169 self.assertEquals( | 178 self.assertEquals( |
| 170 '%s != %s' % (_MakeLink('other.html#type-type2', 'other.type2'), | 179 '%s != %s' % (_MakeLink('other#type-type2', 'other.type2'), |
| 171 _MakeLink('ref_test.html#type-type2', 'type2')), | 180 _MakeLink('ref_test#type-type2', 'type2')), |
| 172 _GetType(dict_, 'type3')['description']) | 181 _GetType(dict_, 'type3')['description']) |
| 173 | 182 |
| 174 | 183 |
| 175 def testGetApiAvailability(self): | 184 def testGetApiAvailability(self): |
| 176 api_availabilities = { | 185 api_availabilities = { |
| 177 'bluetooth': ChannelInfo('dev', CANNED_BRANCHES[28], 28), | 186 'bluetooth': ChannelInfo('dev', CANNED_BRANCHES[28], 28), |
| 178 'contextMenus': ChannelInfo('trunk', CANNED_BRANCHES['trunk'], 'trunk'), | 187 'contextMenus': ChannelInfo('trunk', CANNED_BRANCHES['trunk'], 'trunk'), |
| 179 'jsonStableAPI': ChannelInfo('stable', CANNED_BRANCHES[20], 20), | 188 'jsonStableAPI': ChannelInfo('stable', CANNED_BRANCHES[20], 20), |
| 180 'idle': ChannelInfo('stable', CANNED_BRANCHES[5], 5), | 189 'idle': ChannelInfo('stable', CANNED_BRANCHES[5], 5), |
| 181 'input.ime': ChannelInfo('stable', CANNED_BRANCHES[18], 18), | 190 'input.ime': ChannelInfo('stable', CANNED_BRANCHES[18], 18), |
| (...skipping 105 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 287 # Check that the second event has addListener defined. | 296 # Check that the second event has addListener defined. |
| 288 self.assertEquals('noRules', dict_['events'][1]['name']) | 297 self.assertEquals('noRules', dict_['events'][1]['name']) |
| 289 self.assertEquals('add_rules_tester', dict_['name']) | 298 self.assertEquals('add_rules_tester', dict_['name']) |
| 290 self.assertEquals('noRules', dict_['events'][1]['name']) | 299 self.assertEquals('noRules', dict_['events'][1]['name']) |
| 291 self.assertEquals('callback', | 300 self.assertEquals('callback', |
| 292 dict_['events'][0]['byName']['addListener'][ | 301 dict_['events'][0]['byName']['addListener'][ |
| 293 'parameters'][0]['name']) | 302 'parameters'][0]['name']) |
| 294 | 303 |
| 295 if __name__ == '__main__': | 304 if __name__ == '__main__': |
| 296 unittest.main() | 305 unittest.main() |
| OLD | NEW |