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 unittest | 8 import unittest |
9 | 9 |
10 from file_system_cache import FileSystemCache | 10 from file_system_cache import FileSystemCache |
11 from local_file_system import LocalFileSystem | 11 from local_file_system import LocalFileSystem |
12 from template_data_source import TemplateDataSource | 12 from template_data_source import TemplateDataSource |
13 from third_party.handlebar import Handlebar | 13 from third_party.handlebar import Handlebar |
14 | 14 |
15 class _FakeRequest(object): | 15 class _FakeRequest(object): |
16 def __init__(self): | 16 def __init__(self): |
17 pass | 17 pass |
18 | 18 |
19 class TemplateDataSourceTest(unittest.TestCase): | 19 class TemplateDataSourceTest(unittest.TestCase): |
20 def setUp(self): | 20 def setUp(self): |
21 self._base_path = os.path.join('test_data', 'template_data_source') | 21 self._base_path = os.path.join('test_data', 'template_data_source') |
22 self._fake_api_data_source = {} | 22 self._fake_api_data_source = {} |
| 23 self._fake_api_list_data_source = {} |
23 self._fake_intro_data_source = {} | 24 self._fake_intro_data_source = {} |
24 self._fake_samples_data_source = {} | 25 self._fake_samples_data_source = {} |
25 | 26 |
26 def _ReadLocalFile(self, filename): | 27 def _ReadLocalFile(self, filename): |
27 with open(os.path.join(self._base_path, filename), 'r') as f: | 28 with open(os.path.join(self._base_path, filename), 'r') as f: |
28 return f.read() | 29 return f.read() |
29 | 30 |
30 def _RenderTest(self, name, data_source): | 31 def _RenderTest(self, name, data_source): |
31 template_name = name + '_tmpl.html' | 32 template_name = name + '_tmpl.html' |
32 template = Handlebar(self._ReadLocalFile(template_name)) | 33 template = Handlebar(self._ReadLocalFile(template_name)) |
33 self.assertEquals( | 34 self.assertEquals( |
34 self._ReadLocalFile(name + '_expected.html'), | 35 self._ReadLocalFile(name + '_expected.html'), |
35 data_source.Render(template_name)) | 36 data_source.Render(template_name)) |
36 | 37 |
37 def _CreateTemplateDataSource(self, input_dict, cache_builder): | 38 def _CreateTemplateDataSource(self, input_dict, cache_builder): |
38 return (TemplateDataSource.Factory('fake_branch', | 39 return (TemplateDataSource.Factory('fake_branch', |
39 input_dict, | 40 input_dict, |
| 41 self._fake_api_list_data_source, |
40 self._fake_intro_data_source, | 42 self._fake_intro_data_source, |
41 self._fake_samples_data_source, | 43 self._fake_samples_data_source, |
42 cache_builder, | 44 cache_builder, |
43 ['./', './']) | 45 ['./', './']) |
44 .Create(_FakeRequest())) | 46 .Create(_FakeRequest())) |
45 | 47 |
46 def testSimple(self): | 48 def testSimple(self): |
47 self._base_path = os.path.join(self._base_path, 'simple') | 49 self._base_path = os.path.join(self._base_path, 'simple') |
48 fetcher = LocalFileSystem(self._base_path) | 50 fetcher = LocalFileSystem(self._base_path) |
49 cache_builder = FileSystemCache.Builder(fetcher) | 51 cache_builder = FileSystemCache.Builder(fetcher) |
(...skipping 30 matching lines...) Expand all Loading... |
80 json.loads(self._ReadLocalFile('test1.json')), | 82 json.loads(self._ReadLocalFile('test1.json')), |
81 cache_builder)) | 83 cache_builder)) |
82 self._RenderTest( | 84 self._RenderTest( |
83 'test2', | 85 'test2', |
84 self._CreateTemplateDataSource( | 86 self._CreateTemplateDataSource( |
85 json.loads(self._ReadLocalFile('test2.json')), | 87 json.loads(self._ReadLocalFile('test2.json')), |
86 cache_builder)) | 88 cache_builder)) |
87 | 89 |
88 if __name__ == '__main__': | 90 if __name__ == '__main__': |
89 unittest.main() | 91 unittest.main() |
OLD | NEW |