1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21 package org.onemind.commons.java.datastructure;
22
23 import org.onemind.commons.java.datastructure.LookupCache;
24 import junit.framework.TestCase;
25 /***
26 * Test for lookup cache
27 * @author TiongHiang Lee (thlee@onemindsoft.org)
28 * @version $Id: LookupCacheTest.java,v 1.2 2004/08/26 12:33:09 thlee Exp $ $Name: $
29 */
30 public class LookupCacheTest extends TestCase
31 {
32
33 /***
34 * A test implemement for the lookup cache
35 * @author TiongHiang Lee (thlee@onemindsoft.org)
36 * @version $Id: LookupCacheTest.java,v 1.2 2004/08/26 12:33:09 thlee Exp $ $Name: $
37 */
38 private class TestCacheImpl extends LookupCache
39 {
40
41 /***
42 * Only produce value if key is "One" {@inheritDoc}
43 */
44 protected Object produce(Object key)
45 {
46 if (key.equals("One"))
47 {
48 return new Integer("1");
49 } else
50 {
51 return null;
52 }
53 }
54 }
55
56 public void testLookupCache()
57 {
58 TestCacheImpl cache = new TestCacheImpl();
59 String one = "One";
60 String two = "Two";
61 assertFalse(cache.isInCache(one));
62 assertFalse(cache.isInCache(two));
63 assertFalse(cache.isInNegCache(one));
64 assertFalse(cache.isInNegCache(two));
65 cache.lookup("One");
66 cache.lookup("Two");
67 assertTrue(cache.isInCache(one));
68 assertTrue(cache.isInNegCache(two));
69 }
70 }