1 package org.apache.commons.jcs3.admin;
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22 import java.util.List;
23
24 import org.apache.commons.jcs3.JCS;
25 import org.apache.commons.jcs3.access.CacheAccess;
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47 import junit.framework.TestCase;
48
49
50
51
52 public class AdminBeanUnitTest
53 extends TestCase
54 {
55
56
57
58
59
60
61
62 public void testGetRegionInfo()
63 throws Exception
64 {
65 final String regionName = "myRegion";
66 final CacheAccess<String, String> cache = JCS.getInstance( regionName );
67
68 cache.put( "key", "value" );
69
70 final JCSAdminBean admin = new JCSAdminBean();
71
72 final List<CacheRegionInfo> regions = admin.buildCacheInfo();
73
74 boolean foundRegion = false;
75
76 for (final CacheRegionInfo info : regions)
77 {
78
79 if ( info.getCacheName().equals( regionName ) )
80 {
81 foundRegion = true;
82
83 assertTrue( "Byte count should be greater than 5.", info.getByteCount() > 5 );
84
85 assertNotNull( "Should have stats.", info.getCacheStatistics() );
86 }
87 }
88
89 assertTrue( "Should have found the region we just created.", foundRegion );
90 }
91
92
93
94
95
96
97 public void testGetElementForRegionInfo()
98 throws Exception
99 {
100 final String regionName = "myRegion";
101 final CacheAccess<String, String> cache = JCS.getInstance( regionName );
102
103
104 cache.clear();
105
106 final String key = "myKey";
107 cache.put( key, "value" );
108
109 final JCSAdminBean admin = new JCSAdminBean();
110
111 final List<CacheElementInfo> elements = admin.buildElementInfo( regionName );
112 assertEquals( "Wrong number of elements in the region.", 1, elements.size() );
113
114 final CacheElementInfo elementInfo = elements.get(0);
115 assertEquals( "Wrong key." + elementInfo, key, elementInfo.getKey() );
116 }
117
118
119
120
121
122
123 public void testRemove()
124 throws Exception
125 {
126 final JCSAdminBean admin = new JCSAdminBean();
127
128 final String regionName = "myRegion";
129 final CacheAccess<String, String> cache = JCS.getInstance( regionName );
130
131
132 cache.clear();
133 admin.clearRegion( regionName );
134
135 final String key = "myKey";
136 cache.put( key, "value" );
137
138 final List<CacheElementInfo> elements = admin.buildElementInfo( regionName );
139 assertEquals( "Wrong number of elements in the region.", 1, elements.size() );
140
141 final CacheElementInfo elementInfo = elements.get(0);
142 assertEquals( "Wrong key.", key, elementInfo.getKey() );
143
144 admin.removeItem( regionName, key );
145
146 final List<CacheElementInfo> elements2 = admin.buildElementInfo( regionName );
147 assertEquals( "Wrong number of elements in the region after remove.", 0, elements2.size() );
148 }
149
150
151
152
153
154
155 public void testClearAll()
156 throws Exception
157 {
158 final JCSAdminBean admin = new JCSAdminBean();
159
160 final String regionName = "myRegion";
161 final CacheAccess<String, String> cache = JCS.getInstance( regionName );
162
163 final String key = "myKey";
164 cache.put( key, "value" );
165
166 admin.clearAllRegions();
167
168 final List<CacheElementInfo> elements2 = admin.buildElementInfo( regionName );
169 assertEquals( "Wrong number of elements in the region after remove.", 0, elements2.size() );
170 }
171 }