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

Unified Diff: chrome/common/extensions/docs/server2/refresh_tracker_test.py

Issue 660383002: Docserver: Persist stat cache for versioned file systems (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 6 years, 2 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 side-by-side diff with in-line comments
Download patch
Index: chrome/common/extensions/docs/server2/refresh_tracker_test.py
diff --git a/chrome/common/extensions/docs/server2/refresh_tracker_test.py b/chrome/common/extensions/docs/server2/refresh_tracker_test.py
new file mode 100755
index 0000000000000000000000000000000000000000..a110d67bbd6ac9c58a8667f34129d444863f60b3
--- /dev/null
+++ b/chrome/common/extensions/docs/server2/refresh_tracker_test.py
@@ -0,0 +1,47 @@
+#!/usr/bin/env python
+# Copyright 2014 The Chromium Authors. All rights reserved.
+# Use of this source code is governed by a BSD-style license that can be
+# found in the LICENSE file.
+
+import unittest
+
+from object_store_creator import ObjectStoreCreator
+from refresh_tracker import RefreshTracker
+
+
+class RefreshTrackerTest(unittest.TestCase):
+ def setUp(self):
+ self._refresh_tracker = RefreshTracker(ObjectStoreCreator.ForTest())
+
+ def testNonExistentRefreshIsIncomplete(self):
+ self.assertFalse(self._refresh_tracker.GetRefreshComplete('unicorns').Get())
+
+ def testEmptyRefreshIsComplete(self):
+ refresh_id = 'abcdefghijklmnopqrstuvwxyz'
+ self._refresh_tracker.RegisterRefresh(refresh_id, []).Get()
+ self.assertTrue(self._refresh_tracker.GetRefreshComplete(refresh_id).Get())
+
+ def testRefreshCompletion(self):
+ refresh_id = 'this is fun'
+ self._refresh_tracker.RegisterRefresh(refresh_id,
+ ['/do/foo', '/do/bar']).Get()
+ self._refresh_tracker.MarkTaskComplete(refresh_id, '/do/foo')
+ self.assertFalse(self._refresh_tracker.GetRefreshComplete(refresh_id).Get())
+ self._refresh_tracker.MarkTaskComplete(refresh_id, '/do/bar')
+ self.assertTrue(self._refresh_tracker.GetRefreshComplete(refresh_id).Get())
+
+ def testUnknownTasksAreIrrelevant(self):
+ refresh_id = 'i am a banana'
+ self._refresh_tracker.RegisterRefresh(refresh_id,
+ ['a', 'b', 'c', 'd']).Get()
+ self._refresh_tracker.MarkTaskComplete(refresh_id, 'a')
+ self._refresh_tracker.MarkTaskComplete(refresh_id, 'b')
+ self._refresh_tracker.MarkTaskComplete(refresh_id, 'c')
+ self._refresh_tracker.MarkTaskComplete(refresh_id, 'q')
+ self.assertFalse(self._refresh_tracker.GetRefreshComplete(refresh_id).Get())
+ self._refresh_tracker.MarkTaskComplete(refresh_id, 'd')
+ self.assertTrue(self._refresh_tracker.GetRefreshComplete(refresh_id).Get())
+
+
+if __name__ == '__main__':
+ unittest.main()

Powered by Google App Engine
This is Rietveld 408576698