OLD | NEW |
| (Empty) |
1 #!/usr/bin/env python | |
2 # Copyright 2014 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 | |
6 import unittest | |
7 | |
8 from object_store_creator import ObjectStoreCreator | |
9 from refresh_tracker import RefreshTracker | |
10 | |
11 | |
12 class RefreshTrackerTest(unittest.TestCase): | |
13 def setUp(self): | |
14 self._refresh_tracker = RefreshTracker(ObjectStoreCreator.ForTest()) | |
15 | |
16 def testNonExistentRefreshIsIncomplete(self): | |
17 self.assertFalse(self._refresh_tracker.GetRefreshComplete('unicorns').Get()) | |
18 | |
19 def testEmptyRefreshIsComplete(self): | |
20 refresh_id = 'abcdefghijklmnopqrstuvwxyz' | |
21 self._refresh_tracker.StartRefresh(refresh_id, []).Get() | |
22 self.assertTrue(self._refresh_tracker.GetRefreshComplete(refresh_id).Get()) | |
23 | |
24 def testRefreshCompletion(self): | |
25 refresh_id = 'this is fun' | |
26 self._refresh_tracker.StartRefresh(refresh_id, ['/do/foo', '/do/bar']).Get() | |
27 self._refresh_tracker.MarkTaskComplete(refresh_id, '/do/foo').Get() | |
28 self.assertFalse(self._refresh_tracker.GetRefreshComplete(refresh_id).Get()) | |
29 self._refresh_tracker.MarkTaskComplete(refresh_id, '/do/bar').Get() | |
30 self.assertTrue(self._refresh_tracker.GetRefreshComplete(refresh_id).Get()) | |
31 | |
32 def testUnknownTasksAreIrrelevant(self): | |
33 refresh_id = 'i am a banana' | |
34 self._refresh_tracker.StartRefresh(refresh_id, ['a', 'b', 'c', 'd']).Get() | |
35 self._refresh_tracker.MarkTaskComplete(refresh_id, 'a').Get() | |
36 self._refresh_tracker.MarkTaskComplete(refresh_id, 'b').Get() | |
37 self._refresh_tracker.MarkTaskComplete(refresh_id, 'c').Get() | |
38 self._refresh_tracker.MarkTaskComplete(refresh_id, 'q').Get() | |
39 self.assertFalse(self._refresh_tracker.GetRefreshComplete(refresh_id).Get()) | |
40 self._refresh_tracker.MarkTaskComplete(refresh_id, 'd').Get() | |
41 self.assertTrue(self._refresh_tracker.GetRefreshComplete(refresh_id).Get()) | |
42 | |
43 | |
44 if __name__ == '__main__': | |
45 unittest.main() | |
OLD | NEW |