1 package org.apache.commons.jcs.engine.control;
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22 import java.util.Properties;
23
24 import junit.framework.TestCase;
25
26 import org.apache.commons.jcs.auxiliary.AuxiliaryCache;
27 import org.apache.commons.jcs.auxiliary.AuxiliaryCacheConfigurator;
28 import org.apache.commons.jcs.auxiliary.MockAuxiliaryCache;
29 import org.apache.commons.jcs.auxiliary.MockAuxiliaryCacheAttributes;
30 import org.apache.commons.jcs.auxiliary.MockAuxiliaryCacheFactory;
31 import org.apache.commons.jcs.engine.logging.MockCacheEventLogger;
32
33
34 public class CompositeCacheConfiguratorUnitTest
35 extends TestCase
36 {
37
38
39
40 public void testParseAuxiliary_CacheEventLogger_Normal()
41 {
42
43 String regionName = "MyRegion";
44
45 String auxName = "MockAux";
46 String auxPrefix = CompositeCacheConfigurator.AUXILIARY_PREFIX + auxName;
47 String auxiliaryClassName = MockAuxiliaryCacheFactory.class.getName();
48 String eventLoggerClassName = MockCacheEventLogger.class.getName();
49 String auxiliaryAttributeClassName = MockAuxiliaryCacheAttributes.class.getName();
50
51 Properties props = new Properties();
52 props.put( auxPrefix, auxiliaryClassName );
53 props.put( auxPrefix + CompositeCacheConfigurator.ATTRIBUTE_PREFIX, auxiliaryAttributeClassName );
54 props.put( auxPrefix + AuxiliaryCacheConfigurator.CACHE_EVENT_LOGGER_PREFIX, eventLoggerClassName );
55
56
57
58 CompositeCacheManager manager = CompositeCacheManager.getUnconfiguredInstance();
59 CompositeCacheConfigurator configurator = new CompositeCacheConfigurator();
60
61
62 AuxiliaryCache<String, String> aux = configurator.parseAuxiliary( props, manager, auxName, regionName );
63 MockAuxiliaryCache<String, String> result = (MockAuxiliaryCache<String, String>)aux;
64
65
66 assertNotNull( "Should have an auxcache.", result );
67 assertNotNull( "Should have an event logger.", result.getCacheEventLogger() );
68 }
69
70
71
72
73 public void testParseSpoolChunkSize_Normal()
74 {
75
76 String regionName = "MyRegion";
77 int chunkSize = 5;
78
79 Properties props = new Properties();
80 props.put( "jcs.default", "" );
81 props.put( "jcs.default.cacheattributes.SpoolChunkSize", String.valueOf( chunkSize ) );
82
83 CompositeCacheManager manager = CompositeCacheManager.getUnconfiguredInstance();
84
85
86 manager.configure( props );
87
88
89 CompositeCache<String, String> cache = manager.getCache( regionName );
90 assertEquals( "Wrong chunkSize", cache.getCacheAttributes().getSpoolChunkSize(), chunkSize );
91 }
92 }