diff options
Diffstat (limited to 'tests/test_lrucache.py')
-rw-r--r-- | tests/test_lrucache.py | 30 |
1 files changed, 30 insertions, 0 deletions
diff --git a/tests/test_lrucache.py b/tests/test_lrucache.py new file mode 100644 index 0000000..9a1d7d1 --- /dev/null +++ b/tests/test_lrucache.py @@ -0,0 +1,30 @@ +from __future__ import unicode_literals + +import unittest + +from rich._lru_cache import LRUCache + + +def test_lru_cache(): + cache = LRUCache(3) + + # insert some values + cache["foo"] = 1 + cache["bar"] = 2 + cache["baz"] = 3 + assert "foo" in cache + + # Cache size is 3, so the following should kick oldest one out + cache["egg"] = 4 + assert "foo" not in cache + assert "egg" in "egg" in cache + + # cache is now full + # look up two keys + cache["bar"] + cache["baz"] + + # Insert a new value + cache["eggegg"] = 5 + # Check it kicked out the 'oldest' key + assert "egg" not in cache |