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), [[], [], []])
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) == [[], [], []]
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))
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)
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]])
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]]