1
2
3
4
5
6 package org.weda.enhance;
7
8 import org.weda.test.WedaTestCase;
9 import org.weda.cache.CacheManager;
10 import org.weda.cache.CacheService;
11
12 /**
13 *
14 * @author Mikhail Titov
15 */
16 public class CacheAspectTest extends WedaTestCase{
17
18 public CacheAspectTest(String name) throws Exception {
19 super(name);
20 }
21
22 public void test() throws Exception {
23 CacheService cache =
24 ((CacheManager)registry.getService(CacheManager.class))
25 .getCacheService();
26 CachedObject obj1 = new CachedObject("name1");
27 Integer val = obj1.getCachedValue();
28 assertNull(val);
29 String id = obj1.getClass().getName()+"#"+"cachedValue"+"#name1";
30 assertNull(cache.get(id));
31 obj1.setCachedValue(1);
32 assertEquals(new Integer(1), obj1.getCachedValue());
33 assertNotNull(cache.get(id));
34 obj1.setCachedValue(2);
35 assertEquals(new Integer(2), obj1.getCachedValue());
36
37 CachedObject obj2 = new CachedObject("name2");
38 String id2 = obj2.getClass().getName()+"#"+"cachedValue"+"#name2";
39 assertNull(obj2.getCachedValue());
40 obj2.setCachedValue(10);
41 assertEquals(new Integer(10), obj2.getCachedValue());
42 assertEquals(new Integer(2), obj1.getCachedValue());
43 assertNotNull(cache.get(id2));
44
45 obj1.setCachedValue(null);
46 assertEquals(new Integer(10), obj2.getCachedValue());
47 assertNull(obj1.getCachedValue());
48 assertNull(cache.get(id));
49
50 obj2.setCachedValue(null);
51 assertNull(obj1.getCachedValue());
52 assertNull(obj2.getCachedValue());
53 assertNull(cache.get(id));
54 assertNull(cache.get(id2));
55 }
56
57 }