Beispiel #1
0
 def test_remove(self):
     c = cache.ShardedCache(6, 'LRU', 3, f_map=lambda x: x % 3)
     self.assertEqual(c.dump(serialized=False), [[], [], []])
     c.put(0)
     self.assertEqual(c.dump(serialized=False), [[0], [], []])
     c.remove(0)
     self.assertEqual(c.dump(serialized=False), [[], [], []])
Beispiel #2
0
 def test_remove(self):
     c = cache.ShardedCache(6, "LRU", 3, f_map=lambda x: x % 3)
     assert c.dump(serialized=False) == [[], [], []]
     c.put(0)
     assert c.dump(serialized=False) == [[0], [], []]
     c.remove(0)
     assert c.dump(serialized=False) == [[], [], []]
Beispiel #3
0
 def test_put_get_has(self):
     c = cache.ShardedCache(6, 'LRU', 3, f_map=lambda x: x % 3)
     c.put(4)
     self.assertEqual(c.dump(serialized=False), [[], [4], []])
     self.assertTrue(c.has(4))
     self.assertTrue(c.get(4))
     c.put(1)
     self.assertEqual(c.dump(serialized=False), [[], [1, 4], []])
     self.assertTrue(c.has(1))
     self.assertTrue(c.get(1))
     self.assertTrue(c.has(4))
     c.put(7)
     self.assertEqual(c.dump(serialized=False), [[], [7, 1], []])
     self.assertTrue(c.has(7))
     self.assertTrue(c.get(7))
     self.assertTrue(c.has(1))
     self.assertTrue(c.get(1))
     self.assertFalse(c.has(4))
     self.assertFalse(c.get(4))
Beispiel #4
0
 def test_put_get_has(self):
     c = cache.ShardedCache(6, "LRU", 3, f_map=lambda x: x % 3)
     c.put(4)
     assert c.dump(serialized=False) == [[], [4], []]
     assert c.has(4)
     assert c.get(4)
     c.put(1)
     assert c.dump(serialized=False) == [[], [1, 4], []]
     assert c.has(1)
     assert c.get(1)
     assert c.has(4)
     c.put(7)
     assert c.dump(serialized=False) == [[], [7, 1], []]
     assert c.has(7)
     assert c.get(7)
     assert c.has(1)
     assert c.get(1)
     assert not c.has(4)
     assert not c.get(4)
Beispiel #5
0
 def test_put_get_scan(self):
     c = cache.ShardedCache(6, 'LRU', 3, f_map=lambda x: x % 3)
     self.assertEqual(c.put(0), None)
     self.assertEqual(c.dump(serialized=False), [[0], [], []])
     self.assertEqual(c.put(1), None)
     self.assertEqual(c.dump(serialized=False), [[0], [1], []])
     self.assertEqual(c.put(2), None)
     self.assertEqual(c.dump(serialized=False), [[0], [1], [2]])
     c.put(3)
     self.assertEqual(c.dump(serialized=False), [[3, 0], [1], [2]])
     c.put(4)
     self.assertEqual(c.dump(serialized=False), [[3, 0], [4, 1], [2]])
     c.put(5)
     self.assertEqual(c.dump(serialized=False), [[3, 0], [4, 1], [5, 2]])
     self.assertEqual(c.put(6), 0)
     self.assertEqual(c.dump(serialized=False), [[6, 3], [4, 1], [5, 2]])
     self.assertEqual(c.put(7), 1)
     self.assertEqual(c.dump(serialized=False), [[6, 3], [7, 4], [5, 2]])
     self.assertEqual(c.put(8), 2)
     self.assertEqual(c.dump(serialized=False), [[6, 3], [7, 4], [8, 5]])
Beispiel #6
0
 def test_put_get_scan(self):
     c = cache.ShardedCache(6, "LRU", 3, f_map=lambda x: x % 3)
     assert c.put(0) is None
     assert c.dump(serialized=False) == [[0], [], []]
     assert c.put(1) is None
     assert c.dump(serialized=False) == [[0], [1], []]
     assert c.put(2) is None
     assert c.dump(serialized=False) == [[0], [1], [2]]
     c.put(3)
     assert c.dump(serialized=False) == [[3, 0], [1], [2]]
     c.put(4)
     assert c.dump(serialized=False) == [[3, 0], [4, 1], [2]]
     c.put(5)
     assert c.dump(serialized=False) == [[3, 0], [4, 1], [5, 2]]
     assert c.put(6) == 0
     assert c.dump(serialized=False) == [[6, 3], [4, 1], [5, 2]]
     assert c.put(7) == 1
     assert c.dump(serialized=False) == [[6, 3], [7, 4], [5, 2]]
     assert c.put(8) == 2
     assert c.dump(serialized=False) == [[6, 3], [7, 4], [8, 5]]