1 4 package org.oddjob.values.types; 5 6 import java.io.File ; 7 8 import junit.framework.TestCase; 9 10 import org.oddjob.Oddjob; 11 import org.oddjob.arooa.ArooaRuntime; 12 import org.oddjob.arooa.PropertyProxyResolver; 13 import org.oddjob.arooa.reflect.BeanUtilsHelper; 14 import org.oddjob.arooa.reflect.DefaultRegistryLookup; 15 import org.oddjob.arooa.reflect.IntrospectionHelper; 16 import org.oddjob.arooa.registry.ComponentRegistry; 17 import org.oddjob.values.VariablesJob; 18 19 22 public class ListTypeTest extends TestCase { 23 24 PropertyProxyResolver typeManager; 25 Oddjob oj; 26 27 public void setUp() { 28 typeManager = new PropertyProxyResolver(); 29 typeManager.addResource("/org/oddjob/values/proxies.properties"); 30 oj = new Oddjob(); 31 oj.setInput(getClass().getResourceAsStream("listtype-test.xml")); 32 oj.run(); 33 assertEquals(null, oj.lastJobStateEvent().getException()); 34 } 35 36 public void testHandlerLogic() { 37 ListType lt = new ListType(); 38 ArooaRuntime rtc1 = new ArooaRuntime(lt, "list"); 39 ArooaRuntime rtc2 = new ArooaRuntime("test", "value"); 40 rtc1.addChild(rtc2); 41 rtc1.configure(new DefaultRegistryLookup( 42 new ComponentRegistry()), false); 43 Object [] os = (Object []) lt.valueFor(Object [].class); 44 assertEquals(1, os.length); 45 } 46 47 public void test1() { 48 ListType lt = new ListType(); 49 lt.addConfiguredValue("test"); 50 } 51 52 public void testObjects() { 53 VariablesJob vj = (VariablesJob) oj.lookup("vars"); 54 assertNotNull(vj); 55 Object [] o = (Object []) IntrospectionHelper.valueFor( 56 vj.get("mixed-things"), Object [].class); 57 assertEquals("Object ", "Some text", o[0]); 58 } 59 60 public void testStrings() { 61 VariablesJob vj = (VariablesJob) oj.lookup("vars"); 62 assertNotNull(vj); 63 Object o = IntrospectionHelper.valueFor( 64 vj.get("text-things"), String [].class); 65 BeanUtilsHelper.setProperty(this, "stringThings", o); 66 67 } 68 69 public void testFiles() { 70 VariablesJob vj = (VariablesJob) oj.lookup("vars"); 71 assertNotNull(vj); 72 Object o = IntrospectionHelper.valueFor( 73 vj.get("file-things"), File [].class); 74 BeanUtilsHelper.setProperty(this, "fileThings", o); 75 } 76 77 public void setStringThings(String [] s) { 78 assertEquals("String ", "Some text", s[0]); 79 } 80 81 public void setFileThings(String [] f) { 82 assertEquals("File.", "text.txt", f[0].toString()); 83 } 84 } 85 | Popular Tags |