Exemple #1
0
 def test_lru_cache_behavior_ordering(self):
     cache = LRUCache(capacity=3, connect=False)
     cache.setRedisConn(self.redis, cache_name='lrucache')
     cache.put('1', '1')
     cache.put('2', '2')
     self.assertEqual(cache.get('1'), '1')
     cache.put('3', '3')
     cache.put('4', '4')
     self.assertEqual(cache.get('1'), '1')
     self.assertEqual(cache.get('2'), -1)
     self.assertEqual(cache.get('3'), '3')
     self.assertEqual(cache.get('4'), '4')
Exemple #2
0
 def test_lru_cache_behavior_with_two_instances(self):
     cache_new_york = LRUCache(capacity=2, connect=False)
     cache_new_york.setRedisConn(self.redis, cache_name='lru')
     cache_bogota = LRUCache(capacity=2, connect=False)
     cache_bogota.setRedisConn(self.redis, cache_name='lru')
     cache_new_york.put('1', '1')
     cache_new_york.put('2', '2')
     self.assertEqual(cache_bogota.get('1'), '1')
     cache_bogota.put('3', '3')
     self.assertEqual(cache_bogota.get('2'), -1)
     cache_bogota.put('4', '4')
     self.assertEqual(cache_new_york.get('3'), '3')
     self.assertEqual(cache_new_york.get('4'), '4')
     self.assertEqual(cache_new_york.peek('3'), '3')
Exemple #3
0
 def test_error_not_a_string(self):
     cache = LRUCache(capacity=3, connect=False)
     cache.setRedisConn(self.redis, cache_name='lrucache')
     with self.assertRaises(ValueError):
         cache.put(1, '1')
Exemple #4
0
 def test_lru_cache_json(self):
     cache = LRUCache(capacity=1, connect=False)
     cache.setRedisConn(self.redis, cache_name='lrucache')
     cache.put('1', "{'json':'file'}")
     self.assertEqual(cache.get('1'), "{'json':'file'}")