1 4 package org.oddjob.jobs.job; 5 6 import java.io.ByteArrayInputStream ; 7 8 import junit.framework.TestCase; 9 10 import org.oddjob.Oddjob; 11 import org.oddjob.jobs.WaitJob; 12 import org.oddjob.state.JobState; 13 14 public class TriggerJobTest extends TestCase { 15 16 public void test1() { 17 18 String xml = 19 "<oddjob id='this'>" + 20 " <sequential>" + 21 " <scheduler id='sched'>" + 25 " <schedules>" + 26 " <trigger on='${watch}' id='trigger' job='${stop}'/>" + 27 " </schedules>" + 28 " </scheduler>" + 29 " <trigger id='watch' on='${thing1}'/>" + 30 " <echo text='Triggered!' id='thing1'/>" + 31 " <folder>" + 32 " <echo id='stop' text='Now you can stop.'/>" + 33 " </folder>" + 34 " </sequential>" + 35 "</oddjob>"; 36 37 Oddjob oj = new Oddjob(); 38 oj.setInput(new ByteArrayInputStream (xml.getBytes())); 39 oj.run(); 40 41 assertEquals(JobState.EXECUTING, oj.lastJobStateEvent().getJobState()); 42 43 WaitJob wj = new WaitJob(); 44 wj.setFor(oj.lookup("stop")); 45 wj.setState("complete"); 46 wj.run(); 47 48 oj.stop(); 49 50 assertEquals(JobState.COMPLETE, oj.lastJobStateEvent().getJobState()); 51 } 52 53 } 54 | Popular Tags |