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

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

Issue 11315018: Extensions Docs Server: Generalize $ref's to work for any schema node (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Created 8 years, 1 month 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
(Empty)
1 #!/usr/bin/env python
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
4 # found in the LICENSE file.
5
6 import json
7 import os
8 import sys
9 import unittest
10
11 from docs_server_utils import GetLinkToRefType
12 from file_system import FileNotFoundError
13
14 class FakeAPIDataSource(object):
15 def __init__(self, json_data):
16 self._json = json_data
17
18 def __getitem__(self, key):
19 if key not in self._json:
20 raise FileNotFoundError(key)
21 return self._json[key]
22
23 def keys(self):
24 return self._json.keys()
25
26 class APIDataSourceTest(unittest.TestCase):
27 def setUp(self):
28 self._base_path = os.path.join(sys.path[0], 'test_data', 'test_json')
29
30 def _ReadLocalFile(self, filename):
31 with open(os.path.join(self._base_path, filename), 'r') as f:
32 return f.read()
33
34 def testGetLinkToRefType(self):
35 data_source = FakeAPIDataSource(
36 json.loads(self._ReadLocalFile('fake_data_source.json')))
37 self.assertEqual({
38 'href': 'foo.html#type-foo_t1',
39 'text': 'foo.foo_t1'
40 }, GetLinkToRefType('baz', 'foo.foo_t1', data_source, data_source.keys()))
41 self.assertEqual({
42 'href': '#event-baz_e1',
43 'text': 'baz_e1'
44 }, GetLinkToRefType('baz', 'baz.baz_e1', data_source, data_source.keys()))
45 self.assertEqual({
46 'href': '#event-baz_e1',
47 'text': 'baz_e1'
48 }, GetLinkToRefType('baz', 'baz_e1', data_source, data_source.keys()))
49 self.assertEqual({
50 'href': 'foo.html#method-foo_f1',
51 'text': 'foo.foo_f1'
52 }, GetLinkToRefType('baz', 'foo.foo_f1', data_source, data_source.keys()))
53 self.assertEqual({
54 'href': 'foo.html#property-foo_p3',
55 'text': 'foo.foo_p3'
56 }, GetLinkToRefType('baz', 'foo.foo_p3', data_source, data_source.keys()))
57 self.assertEqual({
58 'href': 'bar.bon.html#type-bar_t3',
59 'text': 'bar.bon.bar_t3'
60 }, GetLinkToRefType('baz',
61 'bar.bon.bar_t3',
62 data_source,
63 data_source.keys()))
64 self.assertEqual({
65 'href': '#property-bar_p3',
66 'text': 'bar_p3'
67 }, GetLinkToRefType('bar.bon', 'bar_p3', data_source, data_source.keys()))
68 self.assertEqual({
69 'href': '#property-bar_p3',
70 'text': 'bar_p3'
71 }, GetLinkToRefType('bar.bon',
72 'bar.bon.bar_p3',
73 data_source,
74 data_source.keys()))
75 self.assertEqual(
76 None,
77 GetLinkToRefType('bar',
78 'bar.bon.bar_e3',
79 data_source,
80 data_source.keys()))
81 self.assertEqual(
82 None,
83 GetLinkToRefType('baz.bon', 'bar_p3', data_source, data_source.keys()))
84 self.assertEqual(
85 None,
86 GetLinkToRefType('a', 'falafel.faf', data_source, data_source.keys()))
87 self.assertEqual(
88 None,
89 GetLinkToRefType('foo', 'bar_p3', data_source, data_source.keys()))
90
91 if __name__ == '__main__':
92 unittest.main()
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698