OLD | NEW |
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 |
| 7 import os |
6 import unittest | 8 import unittest |
7 | 9 |
8 from appengine_wrappers import GetAppVersion | 10 from appengine_wrappers import GetAppVersion |
9 from app_yaml_helper import AppYamlHelper | 11 from app_yaml_helper import AppYamlHelper |
10 from cron_servlet import CronServlet | 12 from cron_servlet import CronServlet |
11 from empty_dir_file_system import EmptyDirFileSystem | 13 from empty_dir_file_system import EmptyDirFileSystem |
12 from local_file_system import LocalFileSystem | 14 from local_file_system import LocalFileSystem |
13 from mock_file_system import MockFileSystem | 15 from mock_file_system import MockFileSystem |
14 from servlet import Request | 16 from servlet import Request |
15 from test_branch_utility import TestBranchUtility | 17 from test_branch_utility import TestBranchUtility |
16 from test_file_system import TestFileSystem | 18 from test_file_system import TestFileSystem |
17 from test_util import EnableLogging | 19 from test_util import EnableLogging |
18 | 20 |
19 # NOTE(kalman): The ObjectStore created by the CronServlet is backed onto our | 21 # NOTE(kalman): The ObjectStore created by the CronServlet is backed onto our |
20 # fake AppEngine memcache/datastore, so the tests aren't isolated. Of course, | 22 # fake AppEngine memcache/datastore, so the tests aren't isolated. Of course, |
21 # if the host file systems have different identities, they will be, sort of. | 23 # if the host file systems have different identities, they will be, sort of. |
22 class _TestDelegate(CronServlet.Delegate): | 24 class _TestDelegate(CronServlet.Delegate): |
23 def __init__(self, create_file_system): | 25 def __init__(self, create_file_system): |
24 self.file_systems = [] | 26 self.file_systems = [] |
25 # A callback taking a revision and returning a file system. | 27 # A callback taking a revision and returning a file system. |
26 self._create_file_system = create_file_system | 28 self._create_file_system = create_file_system |
27 self._app_version = GetAppVersion() | 29 self._app_version = GetAppVersion() |
28 | 30 |
29 def CreateBranchUtility(self, object_store_creator): | 31 def CreateBranchUtility(self, object_store_creator): |
30 return TestBranchUtility() | 32 return TestBranchUtility() |
31 | 33 |
| 34 def CreateFileSystemForBranch(self, branch): |
| 35 return self._create_file_system(branch) |
| 36 |
32 def CreateHostFileSystemForBranchAndRevision(self, branch, revision): | 37 def CreateHostFileSystemForBranchAndRevision(self, branch, revision): |
33 file_system = self._create_file_system(revision) | 38 file_system = self._create_file_system(revision) |
34 self.file_systems.append(file_system) | 39 self.file_systems.append(file_system) |
35 return file_system | 40 return file_system |
36 | 41 |
37 def CreateAppSamplesFileSystem(self, object_store_creator): | 42 def CreateAppSamplesFileSystem(self, object_store_creator): |
38 return EmptyDirFileSystem() | 43 return EmptyDirFileSystem() |
39 | 44 |
40 def GetAppVersion(self): | 45 def GetAppVersion(self): |
41 return self._app_version | 46 return self._app_version |
(...skipping 151 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
193 CronServlet(Request.ForTest('trunk'), delegate_for_test=delegate).Get() | 198 CronServlet(Request.ForTest('trunk'), delegate_for_test=delegate).Get() |
194 self.assertEqual(AppYamlHelper.GenerateAppYaml('2-1-0'), | 199 self.assertEqual(AppYamlHelper.GenerateAppYaml('2-1-0'), |
195 file_systems[-1].ReadSingle(app_yaml_path)) | 200 file_systems[-1].ReadSingle(app_yaml_path)) |
196 self.assertEqual('y u not update!', | 201 self.assertEqual('y u not update!', |
197 file_systems[-1].ReadSingle(storage_html_path)) | 202 file_systems[-1].ReadSingle(storage_html_path)) |
198 self.assertEqual('important content!', | 203 self.assertEqual('important content!', |
199 file_systems[-1].ReadSingle(static_txt_path)) | 204 file_systems[-1].ReadSingle(static_txt_path)) |
200 | 205 |
201 if __name__ == '__main__': | 206 if __name__ == '__main__': |
202 unittest.main() | 207 unittest.main() |
OLD | NEW |