OLD | NEW |
1 #!/usr/bin/env python | 1 #!/usr/bin/env python |
2 # Copyright 2013 The Chromium Authors. All rights reserved. | 2 # Copyright 2013 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 unittest | 6 import unittest |
7 from api_list_data_source import APIListDataSource | 7 from api_list_data_source import APIListDataSource |
8 from compiled_file_system import CompiledFileSystem | 8 from compiled_file_system import CompiledFileSystem |
9 from copy import deepcopy | 9 from copy import deepcopy |
10 from object_store_creator import ObjectStoreCreator | 10 from object_store_creator import ObjectStoreCreator |
11 from test_file_system import TestFileSystem | 11 from test_file_system import TestFileSystem |
12 | 12 |
13 def _ToTestData(obj): | 13 def _ToTestData(obj): |
14 '''Transforms |obj| into test data by turning a list of files into an object | 14 '''Transforms |obj| into test data by turning a list of files into an object |
15 mapping that file to its contents (derived from its name). | 15 mapping that file to its contents (derived from its name). |
16 ''' | 16 ''' |
17 return (dict((name, name) for name in obj) if isinstance(obj, list) else | 17 return (dict((name, name) for name in obj) if isinstance(obj, list) else |
18 dict((key, _ToTestData(value)) for key, value in obj.items())) | 18 dict((key, _ToTestData(value)) for key, value in obj.items())) |
19 | 19 |
20 _TEST_DATA = _ToTestData({ | 20 _TEST_DATA = _ToTestData({ |
21 'api': [ | 21 'api': [ |
22 'alarms.idl', | 22 'alarms.idl', |
23 'app_window.idl', | 23 'app_window.idl', |
24 'browser_action.json', | 24 'browser_action.json', |
25 'experimental_bluetooth.idl', | 25 'experimental_bluetooth.idl', |
26 'experimental_history.idl', | 26 'experimental_history.idl', |
27 'experimental_infobars.idl', | |
28 'experimental_power.idl', | 27 'experimental_power.idl', |
| 28 'infobars.idl', |
29 'something_internal.idl', | 29 'something_internal.idl', |
30 'something_else_internal.json', | 30 'something_else_internal.json', |
31 'storage.json', | 31 'storage.json', |
32 ], | 32 ], |
33 'public': { | 33 'public': { |
34 'apps': [ | 34 'apps': [ |
35 'alarms.html', | 35 'alarms.html', |
36 'app_window.html', | 36 'app_window.html', |
37 'experimental_bluetooth.html', | 37 'experimental_bluetooth.html', |
38 'experimental_power.html', | 38 'experimental_power.html', |
39 'storage.html', | 39 'storage.html', |
40 ], | 40 ], |
41 'extensions': [ | 41 'extensions': [ |
42 'alarms.html', | 42 'alarms.html', |
43 'browserAction.html', | 43 'browserAction.html', |
44 'experimental_history.html', | 44 'experimental_history.html', |
45 'experimental_infobars.html', | |
46 'experimental_power.html', | 45 'experimental_power.html', |
| 46 'infobars.html', |
47 'storage.html', | 47 'storage.html', |
48 ], | 48 ], |
49 }, | 49 }, |
50 }) | 50 }) |
51 | 51 |
52 class APIListDataSourceTest(unittest.TestCase): | 52 class APIListDataSourceTest(unittest.TestCase): |
53 def setUp(self): | 53 def setUp(self): |
54 self._factory = APIListDataSource.Factory( | 54 self._factory = APIListDataSource.Factory( |
55 CompiledFileSystem.Factory(TestFileSystem(deepcopy(_TEST_DATA)), | 55 CompiledFileSystem.Factory(TestFileSystem(deepcopy(_TEST_DATA)), |
56 ObjectStoreCreator.ForTest()), | 56 ObjectStoreCreator.ForTest()), |
(...skipping 10 matching lines...) Expand all Loading... |
67 def testExperimentalApps(self): | 67 def testExperimentalApps(self): |
68 api_list = self._factory.Create() | 68 api_list = self._factory.Create() |
69 self.assertEqual([{'name': 'experimental.bluetooth'}, | 69 self.assertEqual([{'name': 'experimental.bluetooth'}, |
70 {'name': 'experimental.power', 'last': True}], | 70 {'name': 'experimental.power', 'last': True}], |
71 sorted(api_list.get('apps').get('experimental'))) | 71 sorted(api_list.get('apps').get('experimental'))) |
72 | 72 |
73 def testExtensions(self): | 73 def testExtensions(self): |
74 api_list = self._factory.Create() | 74 api_list = self._factory.Create() |
75 self.assertEqual([{'name': 'alarms'}, | 75 self.assertEqual([{'name': 'alarms'}, |
76 {'name': 'browserAction'}, | 76 {'name': 'browserAction'}, |
| 77 {'name': 'infobars'}, |
77 {'name': 'storage', 'last': True}], | 78 {'name': 'storage', 'last': True}], |
78 sorted(api_list.get('extensions').get('chrome'))) | 79 sorted(api_list.get('extensions').get('chrome'))) |
79 | 80 |
80 def testExperimentalApps(self): | 81 def testExperimentalApps(self): |
81 api_list = self._factory.Create() | 82 api_list = self._factory.Create() |
82 self.assertEqual([{'name': 'experimental.history'}, | 83 self.assertEqual([{'name': 'experimental.history'}, |
83 {'name': 'experimental.infobars'}, | |
84 {'name': 'experimental.power', 'last': True}], | 84 {'name': 'experimental.power', 'last': True}], |
85 sorted(api_list.get('extensions').get('experimental'))) | 85 sorted(api_list.get('extensions').get('experimental'))) |
86 | 86 |
87 if __name__ == '__main__': | 87 if __name__ == '__main__': |
88 unittest.main() | 88 unittest.main() |
OLD | NEW |