Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(18)

Side by Side Diff: chrome/common/extensions/docs/server2/template_data_source_test.py

Issue 10750017: Extensions Docs Server: Intro data source (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Created 8 years, 5 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
OLDNEW
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 fetcher_cache import FetcherCache 10 from fetcher_cache import FetcherCache
11 from local_fetcher import LocalFetcher 11 from local_fetcher import LocalFetcher
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 TemplateDataSourceTest(unittest.TestCase): 15 class TemplateDataSourceTest(unittest.TestCase):
16 def setUp(self): 16 def setUp(self):
17 self._base_path = os.path.join('test_data', 'template_data_source') 17 self._base_path = os.path.join('test_data', 'template_data_source')
18 self._fake_api_data_source = {} 18 self._fake_api_data_source = {}
19 self._fake_intro_data_source = {}
19 20
20 def _ReadLocalFile(self, filename): 21 def _ReadLocalFile(self, filename):
21 with open(os.path.join(self._base_path, filename), 'r') as f: 22 with open(os.path.join(self._base_path, filename), 'r') as f:
22 return f.read() 23 return f.read()
23 24
24 def _RenderTest(self, name, data_source): 25 def _RenderTest(self, name, data_source):
25 template_name = name + '_tmpl.html' 26 template_name = name + '_tmpl.html'
26 template = Handlebar(self._ReadLocalFile(template_name)) 27 template = Handlebar(self._ReadLocalFile(template_name))
27 self.assertEquals( 28 self.assertEquals(
28 self._ReadLocalFile(name + '_expected.html'), 29 self._ReadLocalFile(name + '_expected.html'),
29 data_source.Render(template_name)) 30 data_source.Render(template_name))
30 31
31 def testSimple(self): 32 def testSimple(self):
32 self._base_path = os.path.join(self._base_path, 'simple') 33 self._base_path = os.path.join(self._base_path, 'simple')
33 fetcher = LocalFetcher(self._base_path) 34 fetcher = LocalFetcher(self._base_path)
34 cache_builder = FetcherCache.Builder(fetcher, 0) 35 cache_builder = FetcherCache.Builder(fetcher, 0)
35 t_data_source = TemplateDataSource('fake_branch', 36 t_data_source = TemplateDataSource('fake_branch',
36 self._fake_api_data_source, 37 self._fake_api_data_source,
38 self._fake_intro_data_source,
37 cache_builder, 39 cache_builder,
38 ['./']) 40 ['./'])
39 template_a1 = Handlebar(self._ReadLocalFile('test1.html')) 41 template_a1 = Handlebar(self._ReadLocalFile('test1.html'))
40 self.assertEqual(template_a1.render({}, {'templates': {}}).text, 42 self.assertEqual(template_a1.render({}, {'templates': {}}).text,
41 t_data_source['test1'].render({}, {'templates': {}}).text) 43 t_data_source['test1'].render({}, {'templates': {}}).text)
42 44
43 template_a2 = Handlebar(self._ReadLocalFile('test2.html')) 45 template_a2 = Handlebar(self._ReadLocalFile('test2.html'))
44 self.assertEqual(template_a2.render({}, {'templates': {}}).text, 46 self.assertEqual(template_a2.render({}, {'templates': {}}).text,
45 t_data_source['test2'].render({}, {'templates': {}}).text) 47 t_data_source['test2'].render({}, {'templates': {}}).text)
46 48
47 self.assertEqual(None, t_data_source['junk.html']) 49 self.assertEqual(None, t_data_source['junk.html'])
48 50
49 def testPartials(self): 51 def testPartials(self):
50 self._base_path = os.path.join(self._base_path, 'partials') 52 self._base_path = os.path.join(self._base_path, 'partials')
51 fetcher = LocalFetcher(self._base_path) 53 fetcher = LocalFetcher(self._base_path)
52 cache_builder = FetcherCache.Builder(fetcher, 0) 54 cache_builder = FetcherCache.Builder(fetcher, 0)
53 t_data_source = TemplateDataSource('fake_branch', 55 t_data_source = TemplateDataSource('fake_branch',
54 self._fake_api_data_source, 56 self._fake_api_data_source,
57 self._fake_intro_data_source,
55 cache_builder, 58 cache_builder,
56 ['./']) 59 ['./'])
57 self.assertEqual(self._ReadLocalFile('test_expected.html'), 60 self.assertEqual(self._ReadLocalFile('test_expected.html'),
58 t_data_source['test_tmpl'].render( 61 t_data_source['test_tmpl'].render(
59 json.loads(self._ReadLocalFile('input.json')), t_data_source).text) 62 json.loads(self._ReadLocalFile('input.json')), t_data_source).text)
60 63
61 def testRender(self): 64 def testRender(self):
62 self._base_path = os.path.join(self._base_path, 'render') 65 self._base_path = os.path.join(self._base_path, 'render')
63 fetcher = LocalFetcher(self._base_path) 66 fetcher = LocalFetcher(self._base_path)
64 context = json.loads(self._ReadLocalFile('test1.json')) 67 context = json.loads(self._ReadLocalFile('test1.json'))
65 cache_builder = FetcherCache.Builder(fetcher, 0) 68 cache_builder = FetcherCache.Builder(fetcher, 0)
66 self._RenderTest( 69 self._RenderTest(
67 'test1', 70 'test1',
68 TemplateDataSource('fake_branch', 71 TemplateDataSource('fake_branch',
69 json.loads(self._ReadLocalFile('test1.json')), 72 json.loads(self._ReadLocalFile('test1.json')),
not at google - send to devlin 2012/07/10 01:00:20 Can you pull these TemplateDataSource construction
cduvall 2012/07/10 01:13:14 Done.
73 self._fake_intro_data_source,
70 cache_builder, 74 cache_builder,
71 ['./'])) 75 ['./']))
72 self._RenderTest( 76 self._RenderTest(
73 'test2', 77 'test2',
74 TemplateDataSource('fake_branch', 78 TemplateDataSource('fake_branch',
75 json.loads(self._ReadLocalFile('test2.json')), 79 json.loads(self._ReadLocalFile('test2.json')),
80 self._fake_intro_data_source,
76 cache_builder, 81 cache_builder,
77 ['./'])) 82 ['./']))
78 83
79 if __name__ == '__main__': 84 if __name__ == '__main__':
80 unittest.main() 85 unittest.main()
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698