Esempio n. 1
0
    def testLRUReplacementPolicy(self):
        cache = projector_plugin.LRUCache(2)
        cache.set('a', 1)
        cache.set('b', 2)
        cache.set('c', 3)
        self.assertIsNone(cache.get('a'))
        self.assertEqual(cache.get('b'), 2)
        self.assertEqual(cache.get('c'), 3)

        # Make 'b' the most recently used.
        cache.get('b')
        cache.set('d', 4)

        # Make sure 'c' got replaced with 'd'.
        self.assertIsNone(cache.get('c'))
        self.assertEqual(cache.get('b'), 2)
        self.assertEqual(cache.get('d'), 4)
Esempio n. 2
0
    def testLRUReplacementPolicy(self):
        cache = projector_plugin.LRUCache(2)
        cache.set("a", 1)
        cache.set("b", 2)
        cache.set("c", 3)
        self.assertIsNone(cache.get("a"))
        self.assertEqual(cache.get("b"), 2)
        self.assertEqual(cache.get("c"), 3)

        # Make 'b' the most recently used.
        cache.get("b")
        cache.set("d", 4)

        # Make sure 'c' got replaced with 'd'.
        self.assertIsNone(cache.get("c"))
        self.assertEqual(cache.get("b"), 2)
        self.assertEqual(cache.get("d"), 4)
Esempio n. 3
0
 def testErrorsWhenSettingNoneAsValue(self):
     cache = projector_plugin.LRUCache(1)
     with self.assertRaises(ValueError):
         cache.set('a', None)
Esempio n. 4
0
 def testSimpleGetAndSet(self):
     cache = projector_plugin.LRUCache(1)
     value = cache.get('a')
     self.assertIsNone(value)
     cache.set('a', 10)
     self.assertEqual(cache.get('a'), 10)
Esempio n. 5
0
 def testInvalidSize(self):
     with self.assertRaises(ValueError):
         projector_plugin.LRUCache(0)