mirror of
https://github.com/Grasscutters/mitmproxy.git
synced 2025-02-07 10:40:09 +00:00
35 lines
665 B
Python
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
|