mitmproxy/test/mitmproxy/test_utils_lrucache.py
Aldo Cortesi 069119364d Create mitmproxy.utils hierarchy
- Add mitproxy.utils.lrucache, mitproxy.utils.data
2016-10-20 09:35:55 +13:00

35 lines
665 B
Python

from mitmproxy import utils
def test_LRUCache():
cache = utils.LRUCache(2)
class Foo:
ran = False
def gen(self, x):
self.ran = True
return x
f = Foo()
assert not f.ran
assert cache.get(f.gen, 1) == 1
assert f.ran
f.ran = False
assert cache.get(f.gen, 1) == 1
assert not f.ran
f.ran = False
assert cache.get(f.gen, 1) == 1
assert not f.ran
assert cache.get(f.gen, 2) == 2
assert cache.get(f.gen, 3) == 3
assert f.ran
f.ran = False
assert cache.get(f.gen, 1) == 1
assert f.ran
assert len(cache.cacheList) == 2
assert len(cache.cache) == 2