Rev 4183: Add tests that LRUCache.get() properly tracks accesses. in lp:///~jameinel/bzr/lru_cache_linked_lst

John Arbash Meinel john at arbash-meinel.com
Sun Mar 22 19:30:47 GMT 2009


At lp:///~jameinel/bzr/lru_cache_linked_lst

------------------------------------------------------------
revno: 4183
revision-id: john at arbash-meinel.com-20090322193045-te9xf2ufvsnq09fl
parent: john at arbash-meinel.com-20090322191330-bbueodlalhf0onzh
committer: John Arbash Meinel <john at arbash-meinel.com>
branch nick: lru_cache_linked_lst
timestamp: Sun 2009-03-22 14:30:45 -0500
message:
  Add tests that LRUCache.get() properly tracks accesses.
-------------- next part --------------
=== modified file 'bzrlib/lru_cache.py'
--- a/bzrlib/lru_cache.py	2009-03-22 19:13:30 +0000
+++ b/bzrlib/lru_cache.py	2009-03-22 19:30:45 +0000
@@ -158,8 +158,7 @@
         node = self._cache.get(key, None)
         if node is None:
             return default
-        # XXX: We need a test for this
-        # self._record_access(node)
+        self._record_access(node)
         return node.value
 
     def keys(self):

=== modified file 'bzrlib/tests/test_lru_cache.py'
--- a/bzrlib/tests/test_lru_cache.py	2009-03-22 19:05:03 +0000
+++ b/bzrlib/tests/test_lru_cache.py	2009-03-22 19:30:45 +0000
@@ -205,6 +205,9 @@
         self.assertIs(None, cache.get(3))
         obj = object()
         self.assertIs(obj, cache.get(3, obj))
+        self.assertEqual([2, 1], [n.key for n in cache._walk_lru()])
+        self.assertEqual(10, cache.get(1))
+        self.assertEqual([1, 2], [n.key for n in cache._walk_lru()])
 
     def test_keys(self):
         cache = lru_cache.LRUCache(max_cache=5, after_cleanup_count=5)



More information about the bazaar-commits mailing list