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

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

Issue 148293018: Docserver: Make the .html extension unnecessary for content pages, for example, (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: yoz Created 6 years, 10 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 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 from HTMLParser import HTMLParser 6 from HTMLParser import HTMLParser
7 import unittest 7 import unittest
8 8
9 from fake_fetchers import ConfigureFakeFetchers 9 from fake_fetchers import ConfigureFakeFetchers
10 from github_file_system_provider import GithubFileSystemProvider 10 from github_file_system_provider import GithubFileSystemProvider
(...skipping 111 matching lines...) Expand 10 before | Expand all | Expand 10 after
122 122
123 def testRender(self): 123 def testRender(self):
124 # '_patch' is not included in paths below because it's stripped by Handler. 124 # '_patch' is not included in paths below because it's stripped by Handler.
125 issue = '14096030' 125 issue = '14096030'
126 126
127 # TODO(kalman): Test with chrome_sidenav.json once the sidenav logic has 127 # TODO(kalman): Test with chrome_sidenav.json once the sidenav logic has
128 # stabilised. 128 # stabilised.
129 129
130 # extensions/runtime.html is removed in the patch, should redirect to the 130 # extensions/runtime.html is removed in the patch, should redirect to the
131 # apps version. 131 # apps version.
132 self._AssertRedirect('extensions/runtime.html', issue, 132 self._AssertRedirect('extensions/runtime', issue, 'apps/runtime')
133 'apps/runtime.html')
134 133
135 # apps/runtime.html is not removed. 134 # apps/runtime.html is not removed.
136 self._RenderAndAssertEqual('apps/runtime.html', issue) 135 self._RenderAndAssertEqual('apps/runtime', issue)
137 136
138 # test_foo.html is added in the patch. 137 # test_foo.html is added in the patch.
139 self._AssertOk('extensions/test_foo.html', issue) 138 self._AssertOk('extensions/test_foo', issue)
140 139
141 # Invalid issue number results in a 404. 140 # Invalid issue number results in a 404.
142 self._AssertNotFound('extensions/index.html', '11111') 141 self._AssertNotFound('extensions/index', '11111')
143 142
144 def testXssRedirect(self): 143 def testXssRedirect(self):
145 def is_redirect(from_host, from_path, to_url): 144 def is_redirect(from_host, from_path, to_url):
146 response = PatchServlet(Request.ForTest(from_path, host=from_host), 145 response = PatchServlet(Request.ForTest(from_path, host=from_host),
147 _PatchServletDelegate()).Get() 146 _PatchServletDelegate()).Get()
148 redirect_url, _ = response.GetRedirect() 147 redirect_url, _ = response.GetRedirect()
149 if redirect_url is None: 148 if redirect_url is None:
150 return (False, '%s/%s did not cause a redirect' % ( 149 return (False, '%s/%s did not cause a redirect' % (
151 from_host, from_path)) 150 from_host, from_path))
152 if redirect_url != to_url: 151 if redirect_url != to_url:
153 return (False, '%s/%s redirected to %s not %s' % ( 152 return (False, '%s/%s redirected to %s not %s' % (
154 from_host, from_path, redirect_url, to_url)) 153 from_host, from_path, redirect_url, to_url))
155 return (True, '%s/%s redirected to %s' % ( 154 return (True, '%s/%s redirected to %s' % (
156 from_host, from_path, redirect_url)) 155 from_host, from_path, redirect_url))
157 self.assertTrue(*is_redirect('http://developer.chrome.com', '12345', 156 self.assertTrue(*is_redirect('http://developer.chrome.com', '12345',
158 '%s/_patch/12345' % _ALLOWED_HOST)) 157 '%s/_patch/12345' % _ALLOWED_HOST))
159 self.assertTrue(*is_redirect('http://developers.google.com', '12345', 158 self.assertTrue(*is_redirect('http://developers.google.com', '12345',
160 '%s/_patch/12345' % _ALLOWED_HOST)) 159 '%s/_patch/12345' % _ALLOWED_HOST))
161 self.assertFalse(*is_redirect('http://chrome-apps-doc.appspot.com', '12345', 160 self.assertFalse(*is_redirect('http://chrome-apps-doc.appspot.com', '12345',
162 None)) 161 None))
163 self.assertFalse(*is_redirect('http://some-other-app.appspot.com', '12345', 162 self.assertFalse(*is_redirect('http://some-other-app.appspot.com', '12345',
164 None)) 163 None))
165 164
166 if __name__ == '__main__': 165 if __name__ == '__main__':
167 unittest.main() 166 unittest.main()
OLDNEW
« no previous file with comments | « chrome/common/extensions/docs/server2/integration_test.py ('k') | chrome/common/extensions/docs/server2/path_canonicalizer.py » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698