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

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

Issue 15087006: Docserver: there is only one. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: epic rebase Created 7 years, 5 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 unittest 6 import unittest
7 7
8 from empty_dir_file_system import EmptyDirFileSystem 8 from empty_dir_file_system import EmptyDirFileSystem
9 from file_system import FileSystem 9 from file_system import FileSystem
10 from instance_servlet import InstanceServlet 10 from instance_servlet import InstanceServlet
11 from servlet import Request 11 from servlet import Request
12 from test_branch_utility import TestBranchUtility 12 from test_branch_utility import TestBranchUtility
13 from test_util import DisableLogging 13 from test_util import DisableLogging
14 14
15 # XXX(kalman): what is this test supposed to be?
16 # Create a test host file system creator which failz?
17
15 # NOTE(kalman): The ObjectStore created by the InstanceServlet is backed onto 18 # NOTE(kalman): The ObjectStore created by the InstanceServlet is backed onto
16 # our fake AppEngine memcache/datastore, so the tests aren't isolated. 19 # our fake AppEngine memcache/datastore, so the tests aren't isolated.
17 class _TestDelegate(InstanceServlet.Delegate): 20 class _TestDelegate(InstanceServlet.Delegate):
18 def __init__(self, file_system_type): 21 def __init__(self, file_system_type):
19 self._file_system_type = file_system_type 22 self._file_system_type = file_system_type
20 23
21 def CreateBranchUtility(self, object_store_creator): 24 def CreateBranchUtility(self, object_store_creator):
22 return TestBranchUtility.CreateWithCannedData() 25 return TestBranchUtility.CreateWithCannedData()
23 26
24 def CreateAppSamplesFileSystem(self, object_store_creator): 27 def CreateAppSamplesFileSystem(self, object_store_creator):
25 return EmptyDirFileSystem() 28 return EmptyDirFileSystem()
26 29
27 class _FailOnAccessFileSystem(FileSystem): 30 class _FailOnAccessFileSystem(FileSystem):
28 # All this needs to do is implement GetIdentity. All other methods will 31 # All this needs to do is implement GetIdentity. All other methods will
29 # automatically fail with NotImplementedErrors. 32 # automatically fail with NotImplementedErrors.
30 def GetIdentity(self): 33 def GetIdentity(self):
31 return '42' 34 return '42'
32 35
33 class InstanceServletTest(unittest.TestCase): 36 class InstanceServletTest(unittest.TestCase):
34 @DisableLogging('warning') 37 @DisableLogging('warning')
35 def testHostFileSystemNotAccessed(self): 38 def testHostFileSystemNotAccessed(self):
36 delegate = _TestDelegate(_FailOnAccessFileSystem) 39 delegate = _TestDelegate(_FailOnAccessFileSystem)
37 constructor = InstanceServlet.GetConstructor(delegate_for_test=delegate) 40 constructor = InstanceServlet.GetConstructor(delegate_for_test=delegate)
38 def test_path(path): 41 def test_path(path, status=404):
39 response = constructor(Request.ForTest(path)).Get() 42 response = constructor(Request.ForTest(path)).Get()
40 self.assertEqual(404, response.status) 43 self.assertEqual(status, response.status)
41 test_path('extensions/storage.html') 44 test_path('extensions/storage.html')
42 test_path('apps/storage.html') 45 test_path('apps/storage.html')
43 test_path('extensions/examples/foo.zip') 46 test_path('extensions/examples/foo.zip')
44 test_path('extensions/examples/foo.html') 47 test_path('extensions/examples/foo.html')
45 test_path('static/foo.css') 48 test_path('static/foo.css')
46 test_path('beta/extensions/storage.html') 49 test_path('beta/extensions/storage.html', status=301)
47 test_path('beta/apps/storage.html') 50 test_path('beta/apps/storage.html', status=301)
48 test_path('beta/extensions/examples/foo.zip') 51 test_path('beta/extensions/examples/foo.zip', status=301)
49 test_path('beta/extensions/examples/foo.html') 52 test_path('beta/extensions/examples/foo.html', status=301)
50 test_path('beta/static/foo.css') 53 test_path('beta/static/foo.css', status=301)
51 54
52 if __name__ == '__main__': 55 if __name__ == '__main__':
53 unittest.main() 56 unittest.main()
OLDNEW
« no previous file with comments | « chrome/common/extensions/docs/server2/instance_servlet.py ('k') | chrome/common/extensions/docs/server2/integration_test.py » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698