Пример #1
0
 def test_clear(self):
   pairs = [('a', 1), ('b', 2), ('c', 3), ('d', 4)]
   cache = LruCache(pairs)
   self.assertEqual(len(cache), len(pairs))
   cache.clear()
   self.assertEqual(len(cache), 0)
   cache.clear()
   self.assertEqual(len(cache), 0)
   cache.update(pairs)
   self.assertEqual(len(cache), len(pairs))
   cache.clear()
   self.assertEqual(len(cache), 0)
Пример #2
0
 def test_delitem(self):
   with self.assertRaises(KeyError):
     del LruCache()['key']
   pairs = [('a', 1), ('b', 2), ('c', 3), ('d', 4)]
   cache = LruCache(pairs)
   with self.assertRaises(KeyError):
     del cache['key']
   for index, (key, value) in enumerate(pairs):
     del cache[key]
     self.assertEqual(cache.items(), pairs[index+1:][::-1])
   # start deleting from the tail
   cache.update(pairs)
   for index, (key, value) in enumerate(pairs[::-1]):
     del cache[key]
     index = len(pairs) - index - 1
     self.assertEqual(cache.items(), pairs[:index][::-1])