KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > org > nanocontainer > script > xml > issues > Issue0170TestCase


1 package org.nanocontainer.script.xml.issues;
2
3 import com.thoughtworks.proxy.toys.hotswap.Swappable;
4
5 import java.io.Reader JavaDoc;
6 import java.io.StringReader JavaDoc;
7 import java.util.List JavaDoc;
8
9 import org.nanocontainer.script.AbstractScriptedContainerBuilderTestCase;
10 import org.nanocontainer.script.xml.XMLContainerBuilder;
11 import org.picocontainer.PicoContainer;
12
13 //http://jira.codehaus.org/browse/NANO-170
14
public class Issue0170TestCase extends AbstractScriptedContainerBuilderTestCase {
15
16     public void testHotSwappingCAF() {
17         Reader JavaDoc script = new StringReader JavaDoc("" +
18                 "<container>" +
19                 " <component-adapter-factory key='factory' class='org.picocontainer.gems.adapters.HotSwappingComponentAdapterFactory'>"+
20                 " <component-adapter-factory class='org.picocontainer.defaults.CachingComponentAdapterFactory'>"+
21                 " <component-adapter-factory class='org.picocontainer.defaults.ConstructorInjectionComponentAdapterFactory'/>"+
22                 " </component-adapter-factory>"+
23                 " </component-adapter-factory>"+
24                 " <component-adapter class-name-key='java.util.List' class='java.util.ArrayList' factory='factory'/>"+
25                 "</container>");
26
27         PicoContainer pico = buildContainer(script);
28         assertNotNull(pico);
29         List JavaDoc list = (List JavaDoc)pico.getComponentInstanceOfType(List JavaDoc.class);
30         assertNotNull(list);
31         assertTrue(list instanceof Swappable);
32     }
33
34     private PicoContainer buildContainer(Reader JavaDoc script) {
35         return buildContainer(new XMLContainerBuilder(script, getClass().getClassLoader()), null, "SOME_SCOPE");
36     }
37
38 }
39
40    
Popular Tags