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

Side by Side Diff: chrome/common/extensions/docs/server2/content_providers_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: . 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 import json 6 import json
7 import unittest 7 import unittest
8 8
9 from compiled_file_system import CompiledFileSystem 9 from compiled_file_system import CompiledFileSystem
10 from content_providers import ContentProviders 10 from content_providers import ContentProviders
(...skipping 82 matching lines...) Expand 10 before | Expand all | Expand 10 after
93 return self._file_system 93 return self._file_system
94 94
95 def GetAndReset(self): 95 def GetAndReset(self):
96 calls = self._calls 96 calls = self._calls
97 self._calls = [] 97 self._calls = []
98 return calls 98 return calls
99 99
100 100
101 class ContentProvidersTest(unittest.TestCase): 101 class ContentProvidersTest(unittest.TestCase):
102 def setUp(self): 102 def setUp(self):
103 object_store_creator = ObjectStoreCreator.ForTest()
103 test_file_system = TestFileSystem(_FILE_SYSTEM_DATA, relative_to=EXTENSIONS) 104 test_file_system = TestFileSystem(_FILE_SYSTEM_DATA, relative_to=EXTENSIONS)
104 self._github_fs_provider = _MockGithubFileSystemProvider(test_file_system) 105 self._github_fs_provider = _MockGithubFileSystemProvider(test_file_system)
105 self._content_providers = ContentProviders( 106 self._content_providers = ContentProviders(
106 CompiledFileSystem.Factory(ObjectStoreCreator.ForTest()), 107 object_store_creator,
108 CompiledFileSystem.Factory(object_store_creator),
107 test_file_system, 109 test_file_system,
108 self._github_fs_provider) 110 self._github_fs_provider)
109 111
110 def testSimpleRootPath(self): 112 def testSimpleRootPath(self):
111 provider = self._content_providers.GetByName('apples') 113 provider = self._content_providers.GetByName('apples')
112 self.assertEqual( 114 self.assertEqual(
113 'gala apples', 115 'gala apples',
114 provider.GetContentAndType('gala.txt').Get().content) 116 provider.GetContentAndType('gala.txt').Get().content)
115 self.assertEqual( 117 self.assertEqual(
116 'granny smith apples', 118 'granny smith apples',
117 provider.GetContentAndType('green/granny smith.txt').Get().content) 119 provider.GetContentAndType('green/granny smith.txt').Get().content)
118 120
119 def testComplexRootPath(self): 121 def testComplexRootPath(self):
120 provider = self._content_providers.GetByName('tomatoes') 122 provider = self._content_providers.GetByName('tomatoes')
121 self.assertEqual( 123 self.assertEqual(
122 'no they aren\'t', 124 'no they aren\'t',
123 provider.GetContentAndType('vegetable.txt').Get().content) 125 provider.GetContentAndType('vegetable.txt').Get().content)
124 self.assertEqual( 126 self.assertEqual(
125 'cherry tomatoes', 127 'cherry tomatoes',
126 provider.GetContentAndType('fruit/cherry.txt').Get().content) 128 provider.GetContentAndType('fruit/cherry.txt').Get().content)
127 129
128 def testParentRootPath(self): 130 def testParentRootPath(self):
129 provider = self._content_providers.GetByName('bananas') 131 provider = self._content_providers.GetByName('bananas')
130 self.assertEqual( 132 self.assertEqual(
131 'gala apples', 133 'gala apples',
132 provider.GetContentAndType('apples/gala.txt').Get().content) 134 provider.GetContentAndType('apples/gala.txt').Get().content)
133 135
134 def testSimpleServlet(self): 136 def testSimpleServlet(self):
135 provider, path = self._content_providers.GetByServeFrom('apples-dir') 137 provider, serve_from, path = self._content_providers.GetByServeFrom(
138 'apples-dir')
136 self.assertEqual('apples', provider.name) 139 self.assertEqual('apples', provider.name)
140 self.assertEqual('apples-dir', serve_from)
137 self.assertEqual('', path) 141 self.assertEqual('', path)
138 provider, path = self._content_providers.GetByServeFrom( 142 provider, serve_from, path = self._content_providers.GetByServeFrom(
139 'apples-dir/are/forever') 143 'apples-dir/are/forever')
140 self.assertEqual('apples', provider.name) 144 self.assertEqual('apples', provider.name)
145 self.assertEqual('apples-dir', serve_from)
141 self.assertEqual('are/forever', path) 146 self.assertEqual('are/forever', path)
142 147
143 def testComplexServlet(self): 148 def testComplexServlet(self):
144 provider, path = self._content_providers.GetByServeFrom( 149 provider, serve_from, path = self._content_providers.GetByServeFrom(
145 'tomatoes-dir/are/a') 150 'tomatoes-dir/are/a')
146 self.assertEqual('tomatoes', provider.name) 151 self.assertEqual('tomatoes', provider.name)
152 self.assertEqual('tomatoes-dir/are/a', serve_from)
147 self.assertEqual('', path) 153 self.assertEqual('', path)
148 provider, path = self._content_providers.GetByServeFrom( 154 provider, serve_from, path = self._content_providers.GetByServeFrom(
149 'tomatoes-dir/are/a/fruit/they/are') 155 'tomatoes-dir/are/a/fruit/they/are')
150 self.assertEqual('tomatoes', provider.name) 156 self.assertEqual('tomatoes', provider.name)
157 self.assertEqual('tomatoes-dir/are/a', serve_from)
151 self.assertEqual('fruit/they/are', path) 158 self.assertEqual('fruit/they/are', path)
152 159
153 def testEmptyStringServlet(self): 160 def testEmptyStringServlet(self):
154 provider, path = self._content_providers.GetByServeFrom('tomatoes-dir/are') 161 provider, serve_from, path = self._content_providers.GetByServeFrom(
162 'tomatoes-dir/are')
155 self.assertEqual('bananas', provider.name) 163 self.assertEqual('bananas', provider.name)
164 self.assertEqual('', serve_from)
156 self.assertEqual('tomatoes-dir/are', path) 165 self.assertEqual('tomatoes-dir/are', path)
157 provider, path = self._content_providers.GetByServeFrom('') 166 provider, serve_from, path = self._content_providers.GetByServeFrom('')
158 self.assertEqual('bananas', provider.name) 167 self.assertEqual('bananas', provider.name)
168 self.assertEqual('', serve_from)
159 self.assertEqual('', path) 169 self.assertEqual('', path)
160 170
161 @DisableLogging('error') 171 @DisableLogging('error')
162 def testProviderNotFound(self): 172 def testProviderNotFound(self):
163 self.assertEqual(None, self._content_providers.GetByName('cabbages')) 173 self.assertEqual(None, self._content_providers.GetByName('cabbages'))
164 174
165 def testGithubContentProvider(self): 175 def testGithubContentProvider(self):
166 provider, path = self._content_providers.GetByServeFrom( 176 provider, serve_from, path = self._content_providers.GetByServeFrom(
167 'gh/apples/green/granny smith.txt') 177 'gh/apples/green/granny smith.txt')
168 self.assertEqual('github-provider', provider.name) 178 self.assertEqual('github-provider', provider.name)
179 self.assertEqual('gh', serve_from)
169 self.assertEqual('apples/green/granny smith.txt', path) 180 self.assertEqual('apples/green/granny smith.txt', path)
170 self.assertEqual([('GoogleChrome', 'hello-world')], 181 self.assertEqual([('GoogleChrome', 'hello-world')],
171 self._github_fs_provider.GetAndReset()) 182 self._github_fs_provider.GetAndReset())
172 self.assertEqual( 183 self.assertEqual(
173 'granny smith apples', 184 'granny smith apples',
174 provider.GetContentAndType(path).Get().content) 185 provider.GetContentAndType(path).Get().content)
175 186
176 def testGithubContentProviderWithDir(self): 187 def testGithubContentProviderWithDir(self):
177 provider, path = self._content_providers.GetByServeFrom( 188 provider, serve_from, path = self._content_providers.GetByServeFrom(
178 'gh2/fruit/cherry.txt') 189 'gh2/fruit/cherry.txt')
179 self.assertEqual('github-provider-with-dir', provider.name) 190 self.assertEqual('github-provider-with-dir', provider.name)
191 self.assertEqual('gh2', serve_from)
180 self.assertEqual('fruit/cherry.txt', path) 192 self.assertEqual('fruit/cherry.txt', path)
181 self.assertEqual([('SomeOwner', 'some-repo')], 193 self.assertEqual([('SomeOwner', 'some-repo')],
182 self._github_fs_provider.GetAndReset()) 194 self._github_fs_provider.GetAndReset())
183 self.assertEqual( 195 self.assertEqual(
184 'cherry tomatoes', 196 'cherry tomatoes',
185 provider.GetContentAndType(path).Get().content) 197 provider.GetContentAndType(path).Get().content)
186 198
187 if __name__ == '__main__': 199 if __name__ == '__main__':
188 unittest.main() 200 unittest.main()
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698