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

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

Issue 12996003: Dynamically generate a heading for Extension Docs API pages (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: AvailabilityFinder Overhaul; Removing ConfigureFakeFetchers() calls Created 7 years, 6 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
OLDNEW
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 json
7 import os
8
6 from server_instance import ServerInstance 9 from server_instance import ServerInstance
7 import svn_constants
8 from test_file_system import TestFileSystem 10 from test_file_system import TestFileSystem
9 import unittest 11 import unittest
10 12
11 _TEST_DATA = TestFileSystem.MoveTo(svn_constants.INTRO_PATH, { 13 def _LoadJson(name, mode='rb'):
12 'test.html': '<h1>hello</h1>world<h2>first</h2><h3>inner</h3><h2>second</h2>' 14 return json.load(
13 }) 15 open(os.path.join('test_data', 'test_json', name), mode))
14 16
15 class IntroDataSourceTest(unittest.TestCase): 17 class IntroDataSourceTest(unittest.TestCase):
16 def setUp(self): 18 def setUp(self):
17 self._server = ServerInstance.ForTest(TestFileSystem(_TEST_DATA)) 19 self._server = ServerInstance.ForTest(
20 TestFileSystem(_LoadJson('basic_docs_filesystem.json')))
18 21
19 def testIntro(self): 22 def testIntro(self):
20 intro_data_source = self._server.intro_data_source_factory.Create() 23 intro_data_source = self._server.intro_data_source_factory.Create()
21 data = intro_data_source.get('test') 24 data = intro_data_source.get('test')
22 self.assertEqual('hello', data['title']) 25 self.assertEqual('hi', data['title'])
23 # TODO(kalman): test links. 26 # TODO(kalman): test links.
24 expected_toc = [{'subheadings': [{'link': '', 'title': u'inner'}], 27 expected_toc = [{'subheadings': [{'link': '', 'title': u'inner'}],
25 'link': '', 28 'link': '',
26 'title': u'first'}, 29 'title': u'first'},
27 {'subheadings': [], 'link': '', 'title': u'second'}] 30 {'subheadings': [], 'link': '', 'title': u'second'}]
28 self.assertEqual(expected_toc, data['apps_toc']) 31 self.assertEqual(expected_toc, data['apps_toc'])
29 self.assertEqual(expected_toc, data['extensions_toc']) 32 self.assertEqual(expected_toc, data['extensions_toc'])
30 self.assertEqual('world<h2>first</h2><h3>inner</h3><h2>second</h2>', 33 self.assertEqual('you<h2>first</h2><h3>inner</h3><h2>second</h2>',
31 data['intro'].render().text) 34 data['intro'].render().text)
32 35
33 if __name__ == '__main__': 36 if __name__ == '__main__':
34 unittest.main() 37 unittest.main()
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698