OLD | NEW |
---|---|
(Empty) | |
1 #!/usr/bin/env python | |
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 | |
4 # found in the LICENSE file. | |
5 | |
not at google - send to devlin
2013/10/08 15:48:39
ditto
| |
6 from copy import deepcopy | |
7 import unittest | |
8 | |
9 from caching_file_system import CachingFileSystem | |
10 from file_system import FileNotFoundError | |
11 from host_file_system_provider import HostFileSystemProvider | |
12 from object_store_creator import ObjectStoreCreator | |
13 from offline_file_system import OfflineFileSystem | |
14 from test_data.canned_data import CANNED_API_FILE_SYSTEM_DATA | |
15 from test_file_system import TestFileSystem | |
16 | |
17 class HostFileSystemProviderTest(unittest.TestCase): | |
18 def setUp(self): | |
19 self._idle_path = 'api/idle.json' | |
20 self._canned_data = deepcopy(CANNED_API_FILE_SYSTEM_DATA) | |
21 | |
22 def _constructor_for_test(self, branch, **optargs): | |
23 return TestFileSystem(self._canned_data[branch]) | |
24 | |
25 def testWithCaching(self): | |
26 creator = HostFileSystemProvider( | |
27 ObjectStoreCreator.ForTest(), | |
28 constructor_for_test=self._constructor_for_test) | |
29 | |
30 fs = creator.GetBranch('1500') | |
31 first_read = fs.ReadSingle(self._idle_path) | |
32 self._canned_data['1500']['api']['idle.json'] = 'blah blah blah' | |
33 second_read = fs.ReadSingle(self._idle_path) | |
34 | |
35 self.assertEqual(first_read, second_read) | |
36 | |
37 def testWithOffline(self): | |
38 creator = HostFileSystemProvider( | |
39 ObjectStoreCreator.ForTest(), | |
40 offline=True, | |
41 constructor_for_test=self._constructor_for_test) | |
42 | |
43 fs = creator.GetBranch('1500') | |
44 # Offline file system should raise a FileNotFoundError if read is attempted. | |
45 self.assertRaises(FileNotFoundError, fs.ReadSingle, self._idle_path) | |
46 | |
47 if __name__ == '__main__': | |
48 unittest.main() | |
OLD | NEW |