KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > org > oddjob > scheduling > OJScheduleInstructionTest


1 /*
2  * (c) Rob Gordon 2005
3  */

4 package org.oddjob.scheduling;
5
6 import java.io.ByteArrayInputStream JavaDoc;
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 JavaDoc;
20
21 public class OJScheduleInstructionTest extends TestCase {
22
23     public void testParse() {
24         String JavaDoc 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 JavaDoc inputSource = new InputSource JavaDoc(new ByteArrayInputStream JavaDoc(xml.getBytes()));
48         ph.parse(inputSource, new MainHandler(
49                 ScheduleInstructionFactory.handlerFor(ourcon)));
50         rtc.configure();
51         
52         Object JavaDoc[] list = (Object JavaDoc[]) surrogate.valueFor(Object JavaDoc.class);
53
54         assertEquals(1, list.length);
55         ScheduleInstruction scheduleInstruction = (ScheduleInstruction) list[0];
56         assertNotNull(scheduleInstruction);
57     }
58     
59 }
60
Popular Tags