Example #1
0
    def test_init(self):

        cache = LRUCache(4)
        self.assertEqual(cache.capacity, 4)
        self.assertEqual(cache.head, cache.tail)
        self.assertEqual(len(cache.key_to_prev), 0)
        self.assertTrue(isinstance(cache, LRUCache))
Example #2
0
 def test_get(self):
     lru = LRUCache(3)
     self._put(lru)
     assert lru.get(1) == 10
     assert lru.get(2) == 20
     lru.put(1, 30)
     assert lru.get(1) == 30
Example #3
0
 def test_reset(self):
     cache = LRUCache(2)
     cache.put(1, 'One')
     cache.put(2, 'Two')
     cache.reset()
     result = len(cache.cache)
     self.assertEqual(result, 0, 'Reset test Passed')
Example #4
0
    def __init__(self, cache_size, min_obj_size, max_obj_size):

        """
            cache_size in bytes.
        """
        self._max_size = cache_size

        self.stats = CacheStats.CacheStats("LRU", cache_size)
        self.daily_stats = CacheStats.DailyCacheStats(cache_size)

        ts = int(time.time())

        get_size = int(0.333333 * cache_size)
        put_size = int(0.666666 * cache_size)
        self.get_lru = LRUCache(get_size, 0, 0)
        self.put_fifo = LRUCache(put_size, 0, 0)
Example #5
0
 def test_delete(self):
     cache = LRUCache(2)
     cache.put(1, 'One')
     cache.put(2, 'Two')
     cache._del(1)
     result = len(cache.cache)
     self.assertEqual(result, cache.capacity - 1, 'Delete test Passed')
Example #6
0
 def test_delete(self):
     lru = LRUCache(3)
     self._put(lru)
     lru.delete(1)
     lru.delete(2)
     assert lru.get(1) == -1
     assert lru.get(2) == -1
     assert lru.get(3) == 40
Example #7
0
    def test_operation2(self):

        cache = LRUCache(1)
        cache.set(2, 1, 11)
        self.assertEqual(cache.get(2), 1)

        cache.set(3, 2, 11)
        self.assertEqual(cache.get(2), -1)
        self.assertEqual(cache.get(3), 2)
Example #8
0
 def test_less_capacity(self):
     lru = LRUCache(2)
     self._put(lru)
     assert lru.get(1) == -1
     assert lru.get(3) == 40
     self._put(lru)
     assert lru.get(3) == 40
     assert lru.get(2) == 20
     assert lru.get(1) == -1
Example #9
0
 def test_maximum_capacity(self):
     cache = LRUCache(2)
     cache.put(1, 1)
     cache.put(2, 2)
     cache.get(1)
     cache.put(2, 4)
     cache.put(3, 3)
     result = len(cache.cache)
     self.assertEqual(result, cache.capacity,
                      'Maximum capacity not exceeded test Passed')
Example #10
0
 def test_least_recent(self):
     cache = LRUCache(2)
     cache.put(1, 1)
     cache.put(2, 2)
     cache.get(1)
     cache.put(2, 4)
     cache.put(3, 3)
     result = 1 not in cache.keys
     self.assertEqual(result, True,
                      'Least Recently used memory removal test Passed')
Example #11
0
    def test_operation1(self):

        cache = LRUCache(2)

        cache.set(2, 1, 11)
        cache.set(1, 1, 11)
        self.assertEqual(cache.get(2), 1)
        cache.set(4, 1, 11)
        self.assertEqual(cache.get(1), -1)
        self.assertEqual(cache.get(2), 1)
Example #12
0
 def __init__(self, fellow, my_ip):
     self.addr = my_ip
     self.fellow = fellow
     self.lock = threading.Lock()
     self.DB = {}
     self.log = []
     self.staged = None
     self.term = 0
     self.status = FOLLOWER
     self.majority = ((len(self.fellow) + 1) // 2) + 1
     self.voteCount = 0
     self.commitIdx = 0
     self.timeout_thread = None
     self.init_timeout()
     self.capacity = 3
     self.cache = LRUCache(capacity=self.capacity)
Example #13
0
 def test_capacity(self):
     cache = LRUCache(2)
     result = cache.capacity
     self.assertEqual(result, 2, 'Capacity test Passed')
Example #14
0
 def test_get(self):
     cache = LRUCache(2)
     cache.put(1, 'One')
     result = cache.get(1)
     self.assertEqual(result, 'One', 'Get test Passed')
Example #15
0
File: main.py Project: rr8shah/LRU
from LRU import LRUCache
'''
This code creates the cache memory and executes 
some of the methods for demonstration purpose

'''

cache = LRUCache(2)
cache.put(1, 1)
cache.put(2, 2)
cache.get(1)
cache.put(3, 3)
cache._print()
cache.get(2)
cache.put(4, 4)
cache._print()
cache.get(3)
cache.get(4)
cache.get(2)
cache._del(4)
cache._print()
cache.get(4)
cache.reset()
cache._print()
cache.get(1)
Example #16
0
 def test_size(self):
     lru = LRUCache(1)
     assert lru.capacity == 1
Example #17
0
 def setUp(self):
     print('In setUp()')
     self.fixture = LRUCache()
Example #18
0
 def test_reset(self):
     lru = LRUCache(3)
     self._put(lru)
     lru.reset()
     assert lru.get(1) == -1
     assert lru.get(2) == -1
Example #19
0
 def test_update(self):
     cache = LRUCache(2)
     cache.put(1, 'One')
     cache.put(1, 'Two')
     result = cache.get(1)
     self.assertEqual(result, 'Two', 'Update test Passed')
Example #20
0
 def test_put(self):
     cache = LRUCache(2)
     cache.put(1, 'One')
     result = len(cache.cache)
     self.assertEqual(result, 1, 'Put test Passed')
Example #21
0
 def test_put(self):
     lru = LRUCache(3)
     self._put(lru)
     lru.put(1, 54)
     assert lru.get(1) == 54
     assert lru.get(2) == 20