Source code for rpxdock.tests.util.test_cache

import time
from rpxdock.util import Cache, GLOBALCACHE, Timer

_ncalc = 0

[docs]def sum_(*args): global _ncalc _ncalc += 1 return sum(args)
[docs]def test_cache(): cache = Cache() # with Timer() as t: # for i in range(1000): # cache(time.sleep, 0.001) # t.checkpoint('timesleep') # assert t.timesleep[0] >= 0.001 # assert t.mean.timesleep < 0.0001 global _ncalc assert cache(sum_, 1, 2) == 3 assert _ncalc == 1 assert cache(sum_, 1, 2) == 3 assert _ncalc == 1 assert cache(sum_, 2, 1) == 3 assert _ncalc == 2 assert cache(sum_, 2, 1) == 3 assert _ncalc == 2 assert cache(sum_, 2, 1, 2.5) == 5.5 assert _ncalc == 3 assert cache(sum_, 2, 1, 2.5) == 5.5 assert _ncalc == 3
if __name__ == '__main__': test_cache()