package org.sakai.memory.impl.test; import org.sakaiproject.memory.util.CacheInitializer; import junit.framework.TestCase; import net.sf.ehcache.config.CacheConfiguration; public class TestCacheInitializer extends TestCase { private CacheConfiguration config; private CacheInitializer initializer; public void setUp() { config = new CacheConfiguration(); initializer = new CacheInitializer(); } public void testSingleConfig() { initializer.configure("timeToLiveSeconds=400").initialize(config); assertEquals(400, config.getTimeToLiveSeconds()); } public void testMultipleConfig() { initializer.configure("timeToLiveSeconds=300,timeToIdleSeconds=150") .initialize(config); assertEquals(300, config.getTimeToLiveSeconds()); assertEquals(150, config.getTimeToIdleSeconds()); } public void testDuplicateConfig() { initializer.configure("timeToLiveSeconds=300,timeToIdleSeconds=150,timeToLiveSeconds=10") .initialize(config); assertEquals(10, config.getTimeToLiveSeconds()); assertEquals(150, config.getTimeToIdleSeconds()); } public void testBadKey() { initializer.configure("doesNotExist=300,timeToIdleSeconds=150") .initialize(config); assertEquals(150, config.getTimeToIdleSeconds()); } public void testBadValue() { initializer.configure("timeToLiveSeconds=300a,timeToIdleSeconds=150") .initialize(config); assertEquals(150, config.getTimeToIdleSeconds()); } public void testStringValue() { initializer.configure("name=other") .initialize(config); assertEquals("other", config.getName()); } public void testIntValue() { initializer.configure("maxElementsOnDisk=150") .initialize(config); assertEquals(150, config.getMaxElementsOnDisk()); } public void testBooleanValue() { initializer.configure("eternal=true") .initialize(config); assertEquals(true, config.isEternal()); } }