Chromium Code Reviews| Index: chrome/common/extensions/docs/server2/caching_file_system_test.py |
| diff --git a/chrome/common/extensions/docs/server2/caching_file_system_test.py b/chrome/common/extensions/docs/server2/caching_file_system_test.py |
| index 78becf1a8dc9c8e35f567662cdae3b73dc266bda..5cd7504e6c5aa5edbfe6c00a36b20bd3bd12270b 100755 |
| --- a/chrome/common/extensions/docs/server2/caching_file_system_test.py |
| +++ b/chrome/common/extensions/docs/server2/caching_file_system_test.py |
| @@ -58,13 +58,13 @@ class CachingFileSystemTest(unittest.TestCase): |
| file_system = self._CreateCachingFileSystem( |
| _CreateLocalFs(), start_empty=False) |
| expected = ['dir/'] + ['file%d.html' % i for i in range(7)] |
| - file_system._read_object_store.Set( |
| + file_system._read_cache.Set( |
| 'list/', |
| (expected, file_system.Stat('list/').version)) |
| self.assertEqual(expected, sorted(file_system.ReadSingle('list/').Get())) |
| expected.remove('file0.html') |
| - file_system._read_object_store.Set( |
| + file_system._read_cache.Set( |
| 'list/', |
| (expected, file_system.Stat('list/').version)) |
| self.assertEqual(expected, sorted(file_system.ReadSingle('list/').Get())) |
| @@ -112,9 +112,9 @@ class CachingFileSystemTest(unittest.TestCase): |
| # Test directory and subdirectory stats are cached. |
| file_system = create_empty_caching_fs() |
| - file_system._stat_object_store.Del('bob/bob0') |
| - file_system._read_object_store.Del('bob/bob0') |
| - file_system._stat_object_store.Del('bob/bob1') |
| + file_system._stat_cache.Del('bob/bob0') |
| + file_system._read_cache.Del('bob/bob0') |
| + file_system._stat_cache.Del('bob/bob1') |
| test_fs.IncrementStat(); |
| futures = (file_system.ReadSingle('bob/bob1'), |
| file_system.ReadSingle('bob/bob0')) |
| @@ -128,8 +128,8 @@ class CachingFileSystemTest(unittest.TestCase): |
| # Test a more recent parent directory doesn't force a refetch of children. |
| file_system = create_empty_caching_fs() |
| - file_system._read_object_store.Del('bob/bob0') |
| - file_system._read_object_store.Del('bob/bob1') |
| + file_system._read_cache.Del('bob/bob0') |
| + file_system._read_cache.Del('bob/bob1') |
| futures = (file_system.ReadSingle('bob/bob1'), |
| file_system.ReadSingle('bob/bob2'), |
| file_system.ReadSingle('bob/bob3')) |
| @@ -150,7 +150,7 @@ class CachingFileSystemTest(unittest.TestCase): |
| self.assertTrue(*mock_fs.CheckAndReset(stat_count=1)) |
| file_system = create_empty_caching_fs() |
| - file_system._stat_object_store.Del('bob/bob0') |
| + file_system._stat_cache.Del('bob/bob0') |
| future = file_system.ReadSingle('bob/bob0') |
| self.assertTrue(*mock_fs.CheckAndReset(read_count=1)) |
| self.assertEqual('bob/bob0 contents', future.Get()) |
| @@ -251,6 +251,44 @@ class CachingFileSystemTest(unittest.TestCase): |
| 'bob/bob0': 'bob/bob0 contents', |
| }, read_skip_not_found(('bob/bob0', 'bob/bob2'))) |
| + def testWalkCaching(self): |
| + test_fs = TestFileSystem({ |
| + 'root': { |
| + 'file1': 'file1', |
| + 'file2': 'file2', |
| + 'dir1': { |
| + 'dir1_file1': 'dir1_file1', |
| + 'dir2': {}, |
| + 'dir3': { |
| + 'dir3_file1': 'dir3_file1', |
| + 'dir3_file2': 'dir3_file2' |
| + } |
| + } |
| + } |
| + }) |
| + mock_fs = MockFileSystem(test_fs) |
| + file_system = self._CreateCachingFileSystem(mock_fs, start_empty=True) |
| + for walkinfo in file_system.Walk(''): |
| + pass |
| + self.assertTrue(*mock_fs.CheckAndReset( |
| + read_resolve_count=5, read_count=5, stat_count=5)) |
| + |
| + all_dirs, all_files = [], [] |
| + for root, dirs, files in file_system.Walk(''): |
| + all_dirs.extend(dirs) |
| + all_files.extend(files) |
| + self.assertEqual(sorted(['root/', 'dir1/', 'dir2/', 'dir3/']), |
| + sorted(all_dirs)) |
| + self.assertEqual( |
| + sorted(['file1', 'file2', 'dir1_file1', 'dir3_file1', 'dir3_file2']), |
| + sorted(all_files)) |
| + # All data should be cached. |
| + self.assertTrue(*mock_fs.CheckAndReset()) |
| + |
| + # Starting from a different root should still pull cached data. |
| + for walkinfo in file_system.Walk('root/dir1/'): |
| + pass |
| + self.assertTrue(*mock_fs.CheckAndReset()) |
|
not at google - send to devlin
2014/08/29 20:26:07
Could you also test with a new CachingFileSystem?
|
| if __name__ == '__main__': |
| unittest.main() |