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

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

Issue 80183002: Correct $ref links in extensions documentation server relative location. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Created 7 years 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 sys 8 import sys
9 import unittest 9 import unittest
10 10
11 from file_system import FileNotFoundError 11 from file_system import FileNotFoundError
12 from reference_resolver import ReferenceResolver 12 from reference_resolver import ReferenceResolver
13 from test_object_store import TestObjectStore 13 from test_object_store import TestObjectStore
14 14
15
16 class FakeAPIDataSource(object): 15 class FakeAPIDataSource(object):
17 def __init__(self, json_data): 16 def __init__(self, json_data):
18 self._json = json_data 17 self._json = json_data
19 18
20 def get(self, key, disable_refs=False): 19 def get(self, key, disable_refs=False):
21 assert disable_refs, 'ReferenceResolve should be disabling refs' 20 assert disable_refs, 'ReferenceResolve should be disabling refs'
22 if key not in self._json: 21 if key not in self._json:
23 raise FileNotFoundError(key) 22 raise FileNotFoundError(key)
24 return self._json[key] 23 return self._json[key]
25 24
(...skipping 113 matching lines...) Expand 10 before | Expand all | Expand 10 after
139 resolver.GetLink('falafel.faf', namespace='a')) 138 resolver.GetLink('falafel.faf', namespace='a'))
140 self.assertEqual( 139 self.assertEqual(
141 None, 140 None,
142 resolver.GetLink('bar_p3', namespace='foo')) 141 resolver.GetLink('bar_p3', namespace='foo'))
143 self.assertEqual( 142 self.assertEqual(
144 'Hello <a href="bar.bon.html#property-bar_bon_p3">bar_bon_p3</a>, ' 143 'Hello <a href="bar.bon.html#property-bar_bon_p3">bar_bon_p3</a>, '
145 '<a href="bar.bon.html#property-bar_bon_p3">Bon Bon</a>, ' 144 '<a href="bar.bon.html#property-bar_bon_p3">Bon Bon</a>, '
146 '<a href="bar.bon.html#property-bar_bon_p3">bar_bon_p3</a>', 145 '<a href="bar.bon.html#property-bar_bon_p3">bar_bon_p3</a>',
147 resolver.ResolveAllLinks( 146 resolver.ResolveAllLinks(
148 'Hello $ref:bar_bon_p3, $ref:[bar_bon_p3 Bon Bon], $ref:bar_bon_p3', 147 'Hello $ref:bar_bon_p3, $ref:[bar_bon_p3 Bon Bon], $ref:bar_bon_p3',
148 None,
149 namespace='bar.bon')) 149 namespace='bar.bon'))
150 self.assertEqual( 150 self.assertEqual(
151 'I like <a href="bar.html#property-bar_t1-bar_t1_p1">food</a>.', 151 'I like <a href="bar.html#property-bar_t1-bar_t1_p1">food</a>.',
152 resolver.ResolveAllLinks('I like $ref:[bar.bar_p3.bar_t1_p1 food].', 152 resolver.ResolveAllLinks('I like $ref:[bar.bar_p3.bar_t1_p1 food].',
153 None,
153 namespace='foo')) 154 namespace='foo'))
154 self.assertEqual( 155 self.assertEqual(
155 'Ref <a href="foo.html">It\'s foo!</a>', 156 'Ref <a href="foo.html">It\'s foo!</a>',
156 resolver.ResolveAllLinks('Ref $ref:[foo It\'s foo!]', namespace='bar')) 157 resolver.ResolveAllLinks('Ref $ref:[foo It\'s foo!]', None, namespace='b ar'))
157 self.assertEqual( 158 self.assertEqual(
158 'Ref <a href="bar.html#type-bon">Bon</a>', 159 'Ref <a href="bar.html#type-bon">Bon</a>',
159 resolver.ResolveAllLinks('Ref $ref:[bar.bon Bon]', namespace='bar')) 160 resolver.ResolveAllLinks('Ref $ref:[bar.bon Bon]', None, namespace='bar' ))
160 161
161 # Different kinds of whitespace can be significant inside <pre> tags. 162 # Different kinds of whitespace can be significant inside <pre> tags.
162 self.assertEqual( 163 self.assertEqual(
163 '<pre><a href="bar.html#type-bon">bar.bon</a>({\nkey: value})', 164 '<pre><a href="bar.html#type-bon">bar.bon</a>({\nkey: value})',
164 resolver.ResolveAllLinks('<pre>$ref:[bar.bon]({\nkey: value})', 165 resolver.ResolveAllLinks('<pre>$ref:[bar.bon]({\nkey: value})',
166 None,
165 namespace='baz')) 167 namespace='baz'))
166 168
167 # Allow bare "$ref:foo.bar." at the end of a string. 169 # Allow bare "$ref:foo.bar." at the end of a string.
168 self.assertEqual( 170 self.assertEqual(
169 '<a href="bar.html#type-bon">bar.bon</a>.', 171 '<a href="bar.html#type-bon">bar.bon</a>.',
170 resolver.ResolveAllLinks('$ref:bar.bon.', 172 resolver.ResolveAllLinks('$ref:bar.bon.',
173 None,
not at google - send to devlin 2013/11/21 05:26:50 if the request/path/prefix whatever is optional th
benwells 2013/11/22 05:44:01 Done.
171 namespace='baz')) 174 namespace='baz'))
175
176 # If a request is provided it should construct an approapriate relative link .
not at google - send to devlin 2013/11/21 05:26:50 appropriate
benwells 2013/11/22 05:44:01 Done.
177 class FakeRequest(object):
178 pass
179 request = FakeRequest()
not at google - send to devlin 2013/11/21 05:26:50 use https://code.google.com/p/chromium/codesearch#
benwells 2013/11/22 05:44:01 Done.
180 request.path = 'foo/big/long/path/bar.html'
181 self.assertEqual(
182 'Hello <a href="../../../bar.bon.html#property-bar_bon_p3">bar_bon_p3</a >, '
183 '<a href="../../../bar.bon.html#property-bar_bon_p3">Bon Bon</a>, '
184 '<a href="../../../bar.bon.html#property-bar_bon_p3">bar_bon_p3</a>' ,
not at google - send to devlin 2013/11/21 05:26:50 keep < 80 chars
benwells 2013/11/22 05:44:01 Done.
185 resolver.ResolveAllLinks(
186 'Hello $ref:bar_bon_p3, $ref:[bar_bon_p3 Bon Bon], $ref:bar_bon_p3',
187 request,
188 namespace='bar.bon'))
172 189
173 if __name__ == '__main__': 190 if __name__ == '__main__':
174 unittest.main() 191 unittest.main()
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698