コード例 #1
0
ファイル: test_cache.py プロジェクト: romanlutz/icarus
 def test_put_get_mixed_memory(self):
     c = cache.LruCache(2)
     c = cache.insert_after_k_hits_cache(c, k=2, memory=2)
     self.assertEqual(0, len(c._metacache_queue))
     self.assertEqual(0, len(c._metacache_hits))
     self.assertFalse(c.get(1))
     c.put(1)
     self.assertEqual(1, len(c._metacache_queue))
     self.assertEqual(1, len(c._metacache_hits))
     self.assertFalse(c.get(2))
     c.put(2)
     self.assertEqual(2, len(c._metacache_queue))
     self.assertEqual(2, len(c._metacache_hits))
     self.assertFalse(c.get(3))
     c.put(3)
     self.assertEqual(2, len(c._metacache_queue))
     self.assertEqual(2, len(c._metacache_hits))
     self.assertFalse(c.get(1))
     c.put(1)
     self.assertEqual(2, len(c._metacache_queue))
     self.assertEqual(2, len(c._metacache_hits))
     # This fails because memory wiped out record for 1
     self.assertFalse(c.get(1))
     self.assertFalse(c.get(3))
     c.put(3)
     self.assertEqual(1, len(c._metacache_queue))
     self.assertEqual(1, len(c._metacache_hits))
     self.assertTrue(c.get(3))
     self.assertFalse(c.get(1))
     c.put(1)
     self.assertTrue(c.get(1))
     self.assertEqual(0, len(c._metacache_queue))
     self.assertEqual(0, len(c._metacache_hits))
コード例 #2
0
 def test_put_get_mixed_memory(self):
     c = cache.LruCache(2)
     c = cache.insert_after_k_hits_cache(c, k=2, memory=2)
     self.assertEqual(0, len(c._metacache_queue))
     self.assertEqual(0, len(c._metacache_hits))
     self.assertFalse(c.get(1))
     c.put(1)
     self.assertEqual(1, len(c._metacache_queue))
     self.assertEqual(1, len(c._metacache_hits))
     self.assertFalse(c.get(2))
     c.put(2)
     self.assertEqual(2, len(c._metacache_queue))
     self.assertEqual(2, len(c._metacache_hits))
     self.assertFalse(c.get(3))
     c.put(3)
     self.assertEqual(2, len(c._metacache_queue))
     self.assertEqual(2, len(c._metacache_hits))
     self.assertFalse(c.get(1))
     c.put(1)
     self.assertEqual(2, len(c._metacache_queue))
     self.assertEqual(2, len(c._metacache_hits))
     # This fails because memory wiped out record for 1
     self.assertFalse(c.get(1))
     self.assertFalse(c.get(3))
     c.put(3)
     self.assertEqual(1, len(c._metacache_queue))
     self.assertEqual(1, len(c._metacache_hits))
     self.assertTrue(c.get(3))
     self.assertFalse(c.get(1))
     c.put(1)
     self.assertTrue(c.get(1))
     self.assertEqual(0, len(c._metacache_queue))
     self.assertEqual(0, len(c._metacache_hits))
コード例 #3
0
ファイル: test_cache.py プロジェクト: romanlutz/icarus
 def test_deepcopy(self):
     c = cache.LruCache(10)
     rc = cache.insert_after_k_hits_cache(c, k=3)
     rc.put(1)
     self.assertFalse(c.has(1))
     c.put(3)
     self.assertFalse(rc.has(3))
コード例 #4
0
ファイル: test_policies.py プロジェクト: icarus-sim/icarus
 def test_deepcopy(self):
     c = cache.LruCache(10)
     rc = cache.insert_after_k_hits_cache(c, k=3)
     rc.put(1)
     assert not c.has(1)
     c.put(3)
     assert not rc.has(3)
コード例 #5
0
ファイル: test_policies.py プロジェクト: icarus-sim/icarus
 def test_put_get_mixed_memory(self):
     c = cache.LruCache(2)
     c = cache.insert_after_k_hits_cache(c, k=2, memory=2)
     assert 0 == len(c._metacache_queue)
     assert 0 == len(c._metacache_hits)
     assert not c.get(1)
     c.put(1)
     assert 1 == len(c._metacache_queue)
     assert 1 == len(c._metacache_hits)
     assert not c.get(2)
     c.put(2)
     assert 2 == len(c._metacache_queue)
     assert 2 == len(c._metacache_hits)
     assert not c.get(3)
     c.put(3)
     assert 2 == len(c._metacache_queue)
     assert 2 == len(c._metacache_hits)
     assert not c.get(1)
     c.put(1)
     assert 2 == len(c._metacache_queue)
     assert 2 == len(c._metacache_hits)
     # This fails because memory wiped out record for 1
     assert not c.get(1)
     assert not c.get(3)
     c.put(3)
     assert 1 == len(c._metacache_queue)
     assert 1 == len(c._metacache_hits)
     assert c.get(3)
     assert not c.get(1)
     c.put(1)
     assert c.get(1)
     assert 0 == len(c._metacache_queue)
     assert 0 == len(c._metacache_hits)
コード例 #6
0
 def test_deepcopy(self):
     c = cache.LruCache(10)
     rc = cache.insert_after_k_hits_cache(c, k=3)
     rc.put(1)
     self.assertFalse(c.has(1))
     c.put(3)
     self.assertFalse(rc.has(3))
コード例 #7
0
 def test_put_get_force_insert_eviction(self):
     c = cache.LruCache(2)
     c = cache.insert_after_k_hits_cache(c, k=3, memory=None)
     self.assertFalse(c.get(1))
     c.put(1, force_insert=True)
     self.assertTrue(c.get(1))
     c.put(2, force_insert=True)
     self.assertTrue(c.get(2))
     self.assertEqual(c.put(3, force_insert=True), 1)
コード例 #8
0
ファイル: test_policies.py プロジェクト: icarus-sim/icarus
 def test_put_get_force_insert_eviction(self):
     c = cache.LruCache(2)
     c = cache.insert_after_k_hits_cache(c, k=3, memory=None)
     assert not c.get(1)
     c.put(1, force_insert=True)
     assert c.get(1)
     c.put(2, force_insert=True)
     assert c.get(2)
     assert c.put(3, force_insert=True) == 1
コード例 #9
0
ファイル: test_policies.py プロジェクト: icarus-sim/icarus
 def test_put_get_force_insert_eviction(self):
     c = cache.LruCache(2)
     c = cache.insert_after_k_hits_cache(c, k=3, memory=None)
     self.assertFalse(c.get(1))
     c.put(1, force_insert=True)
     self.assertTrue(c.get(1))
     c.put(2, force_insert=True)
     self.assertTrue(c.get(2))
     self.assertEqual(c.put(3, force_insert=True), 1)
コード例 #10
0
 def test_put_get_no_memory(self):
     c = cache.LruCache(2)
     c = cache.insert_after_k_hits_cache(c, k=3, memory=None)
     self.assertFalse(c.get(1))
     c.put(1)
     self.assertFalse(c.get(1))
     c.put(1)
     self.assertFalse(c.get(1))
     c.put(1)
     self.assertTrue(c.get(1))
コード例 #11
0
ファイル: test_cache.py プロジェクト: romanlutz/icarus
 def test_naming(self):
     c = cache.insert_after_k_hits_cache(cache.FifoCache(3), k=3)
     self.assertEqual(c.get.__name__, 'get')
     self.assertEqual(c.put.__name__, 'put')
     self.assertEqual(c.dump.__name__, 'dump')
     self.assertEqual(c.clear.__name__, 'clear')
     self.assertGreater(len(c.get.__doc__), 0)
     self.assertGreater(len(c.put.__doc__), 0)
     self.assertGreater(len(c.dump.__doc__), 0)
     self.assertGreater(len(c.clear.__doc__), 0)
コード例 #12
0
ファイル: test_policies.py プロジェクト: milliele/icarus
 def test_naming(self):
     c = cache.insert_after_k_hits_cache(cache.FifoCache(3), k=3)
     assert c.get.__name__ == 'get'
     assert c.put.__name__ == 'put'
     assert c.dump.__name__ == 'dump'
     assert c.clear.__name__ == 'clear'
     assert len(c.get.__doc__) > 0
     assert len(c.put.__doc__) > 0
     assert len(c.dump.__doc__) > 0
     assert len(c.clear.__doc__) > 0
コード例 #13
0
 def test_naming(self):
     c = cache.insert_after_k_hits_cache(cache.FifoCache(3), k=3)
     self.assertEqual(c.get.__name__, "get")
     self.assertEqual(c.put.__name__, "put")
     self.assertEqual(c.dump.__name__, "dump")
     self.assertEqual(c.clear.__name__, "clear")
     self.assertGreater(len(c.get.__doc__), 0)
     self.assertGreater(len(c.put.__doc__), 0)
     self.assertGreater(len(c.dump.__doc__), 0)
     self.assertGreater(len(c.clear.__doc__), 0)
コード例 #14
0
ファイル: test_policies.py プロジェクト: icarus-sim/icarus
 def test_naming(self):
     c = cache.insert_after_k_hits_cache(cache.FifoCache(3), k=3)
     assert c.get.__name__ == "get"
     assert c.put.__name__ == "put"
     assert c.dump.__name__ == "dump"
     assert c.clear.__name__ == "clear"
     assert len(c.get.__doc__) > 0
     assert len(c.put.__doc__) > 0
     assert len(c.dump.__doc__) > 0
     assert len(c.clear.__doc__) > 0
コード例 #15
0
ファイル: test_policies.py プロジェクト: icarus-sim/icarus
 def test_put_get_no_memory(self):
     c = cache.LruCache(2)
     c = cache.insert_after_k_hits_cache(c, k=3, memory=None)
     assert not c.get(1)
     c.put(1)
     assert not c.get(1)
     c.put(1)
     assert not c.get(1)
     c.put(1)
     assert c.get(1)
コード例 #16
0
 def test_naming(self):
     c = cache.insert_after_k_hits_cache(cache.FifoCache(3), k=3)
     self.assertEqual(c.get.__name__, 'get')
     self.assertEqual(c.put.__name__, 'put')
     self.assertEqual(c.dump.__name__, 'dump')
     self.assertEqual(c.clear.__name__, 'clear')
     self.assertGreater(len(c.get.__doc__), 0)
     self.assertGreater(len(c.put.__doc__), 0)
     self.assertGreater(len(c.dump.__doc__), 0)
     self.assertGreater(len(c.clear.__doc__), 0)
コード例 #17
0
ファイル: test_cache.py プロジェクト: romanlutz/icarus
 def test_put_get_no_memory(self):
     c = cache.LruCache(2)
     c = cache.insert_after_k_hits_cache(c, k=3, memory=None)
     self.assertFalse(c.get(1))
     c.put(1)
     self.assertFalse(c.get(1))
     c.put(1)
     self.assertFalse(c.get(1))
     c.put(1)
     self.assertTrue(c.get(1))