1 4 package org.oddjob.scheduling; 5 6 import java.io.ByteArrayInputStream ; 7 8 import junit.framework.TestCase; 9 10 import org.oddjob.arooa.ArooaRuntime; 11 import org.oddjob.arooa.ArooaContext; 12 import org.oddjob.arooa.ArooaConstants; 13 import org.oddjob.arooa.PropertyProxyResolver; 14 import org.oddjob.arooa.RuntimeConfiguration; 15 import org.oddjob.arooa.handlers.MainHandler; 16 import org.oddjob.arooa.handlers.NestedPropertyHandler; 17 import org.oddjob.arooa.xml.XMLDefinitionHelper; 18 import org.oddjob.values.types.ListType; 19 import org.xml.sax.InputSource ; 20 21 public class OJScheduleInstructionTest extends TestCase { 22 23 public void testParse() { 24 String xml = "<ojschedule id='foo'" 25 + " job='Selected Job'" 26 + " name='Test Schedule'>" 27 + "<schedule>" 28 + "<dayofyear on='25-dec'/>" 29 + "</schedule>" 30 + "</ojschedule>"; 31 32 ArooaContext ourcon = new ArooaContext(); 33 34 PropertyProxyResolver propertyProxyResolver = new PropertyProxyResolver(); 35 propertyProxyResolver.addResource("/org/oddjob/values/proxies.properties"); 36 ourcon.set(ArooaConstants.PROPERTY_PROXY_RESOLVER, propertyProxyResolver); 37 ourcon.set(ArooaConstants.PROPERTY_HANDLER, new NestedPropertyHandler()); 38 39 ListType surrogate = new ListType(); 40 41 RuntimeConfiguration rtc = new ArooaRuntime(surrogate, 42 "surrogate", ourcon); 43 ourcon.set(ArooaConstants.CURRENTLY_CONFIGURING, rtc); 44 45 XMLDefinitionHelper ph = new XMLDefinitionHelper(ourcon); 46 47 InputSource inputSource = new InputSource (new ByteArrayInputStream (xml.getBytes())); 48 ph.parse(inputSource, new MainHandler( 49 ScheduleInstructionFactory.handlerFor(ourcon))); 50 rtc.configure(); 51 52 Object [] list = (Object []) surrogate.valueFor(Object .class); 53 54 assertEquals(1, list.length); 55 ScheduleInstruction scheduleInstruction = (ScheduleInstruction) list[0]; 56 assertNotNull(scheduleInstruction); 57 } 58 59 } 60
| Popular Tags
|