]> gitweb.factorcode.org Git - factor.git/blob - basis/cache/cache-tests.factor
ea1c22b2cf23bd03308fd683d8ff044c7cf1cf25
[factor.git] / basis / cache / cache-tests.factor
1 USING: cache tools.test accessors destructors kernel assocs\r
2 namespaces ;\r
3 IN: cache.tests\r
4 \r
5 TUPLE: mock-disposable < disposable n ;\r
6 \r
7 : <mock-disposable> ( n -- mock-disposable )\r
8     mock-disposable new-disposable swap >>n ;\r
9 \r
10 M: mock-disposable dispose* drop ;\r
11 \r
12 [ ] [ <cache-assoc> "cache" set ] unit-test\r
13 \r
14 [ 0 ] [ "cache" get assoc-size ] unit-test\r
15 \r
16 [ ] [ "cache" get 2 >>max-age drop ] unit-test\r
17 \r
18 [ ] [ 1 <mock-disposable> dup "a" set 2 "cache" get set-at ] unit-test\r
19 \r
20 [ 1 ] [ "cache" get assoc-size ] unit-test\r
21 \r
22 [ ] [ "cache" get purge-cache ] unit-test\r
23 \r
24 [ ] [ 2 <mock-disposable> 3 "cache" get set-at ] unit-test\r
25 \r
26 [ 2 ] [ "cache" get assoc-size ] unit-test\r
27 \r
28 [ ] [ "cache" get purge-cache ] unit-test\r
29 \r
30 [ 1 ] [ "cache" get assoc-size ] unit-test\r
31 \r
32 [ ] [ 3 <mock-disposable> dup "b" set 4 "cache" get set-at ] unit-test\r
33 \r
34 [ 2 ] [ "cache" get assoc-size ] unit-test\r
35 \r
36 [ ] [ "cache" get purge-cache ] unit-test\r
37 \r
38 [ 1 ] [ "cache" get assoc-size ] unit-test\r
39 \r
40 [ f ] [ 2 "cache" get key? ] unit-test\r
41 \r
42 [ 3 ] [ 4 "cache" get at n>> ] unit-test\r
43 \r
44 [ t ] [ "a" get disposed>> ] unit-test\r
45 \r
46 [ f ] [ "b" get disposed>> ] unit-test\r
47 \r
48 [ ] [ "cache" get clear-assoc ] unit-test\r
49 \r
50 [ t ] [ "b" get disposed>> ] unit-test\r