1 package org.nanocontainer.script.groovy; 2 3 import java.io.File ; 4 import java.io.IOException ; 5 import java.io.Reader ; 6 import java.io.StringReader ; 7 import java.net.URL ; 8 9 import junit.framework.TestCase; 10 11 import org.nanocontainer.script.ScriptedContainerBuilder; 12 import org.nanocontainer.script.ScriptedContainerBuilderFactory; 13 14 public class ScriptedContainerBuilderFactoryTestCase 15 extends TestCase { 16 17 private static final String TEST_SCRIPT_PATH = "/org/nanocontainer/script/groovy/nanocontainer.groovy"; 18 19 20 protected void tearDown() throws Exception { 21 super.tearDown(); 22 } 23 24 public void testScriptedContainerBuilderFactoryWithUrl() throws ClassNotFoundException { 25 URL resource = getClass().getResource(TEST_SCRIPT_PATH); 26 assertNotNull("Could not find script resource '+ TEST_SCRIPT_PATH + '.", resource); 27 28 ScriptedContainerBuilderFactory result = new ScriptedContainerBuilderFactory(resource); 29 ScriptedContainerBuilder builder = result.getContainerBuilder(); 30 assertNotNull(builder); 31 assertEquals(GroovyContainerBuilder.class.getName(), builder.getClass().getName()); 32 } 33 34 public void testBuildWithReader() throws ClassNotFoundException { 35 Reader script = new StringReader ("" + 36 "import org.nanocontainer.testmodel.*\n" + 37 "X.reset()\n" + 38 "builder = new org.nanocontainer.script.groovy.GroovyNodeBuilder()\n" + 39 "nano = builder.container {\n" + 40 " component(A)\n" + 41 "}"); 42 43 ScriptedContainerBuilderFactory result = new ScriptedContainerBuilderFactory(script, 44 GroovyContainerBuilder.class.getName()); 45 ScriptedContainerBuilder builder = result.getContainerBuilder(); 46 assertNotNull(builder); 47 assertEquals(GroovyContainerBuilder.class.getName(), builder.getClass().getName()); 48 } 49 50 public void FIXMEtestBuildWithFile() throws ClassNotFoundException , IOException { 52 File resource = new File ("src/test/org/nanocontainer/script/xml/nanocontainer.xml"); 53 assertNotNull("Could not find script resource '+ TEST_SCRIPT_PATH + '.", resource); 54 55 ScriptedContainerBuilderFactory result = new ScriptedContainerBuilderFactory(resource); 56 ScriptedContainerBuilder builder = result.getContainerBuilder(); 57 assertNotNull(builder); 58 assertEquals(GroovyContainerBuilder.class.getName(), builder.getClass().getName()); 59 60 } 61 62 63 } 64 | Popular Tags |