1 4 package org.oddjob.jobs.job; 5 6 import java.io.ByteArrayInputStream ; 7 8 import junit.framework.TestCase; 9 10 import org.apache.commons.beanutils.PropertyUtils; 11 import org.oddjob.Oddjob; 12 import org.oddjob.state.JobState; 13 14 17 public class RunJobTest extends TestCase { 18 19 public static class R implements Runnable { 20 boolean ran; 21 public void run() { 22 ran = true; 23 } 24 public boolean isRan() { 25 return ran; 26 } 27 } 28 29 public void testCode() { 30 R r = new R(); 31 32 RunJob j = new RunJob(); 33 j.setJob(r); 34 j.run(); 35 36 assertEquals(JobState.COMPLETE 37 , j.lastJobStateEvent().getJobState()); 38 assertTrue(r.ran); 39 } 40 41 public void testInOddjob() throws Exception { 42 String xml = "<oddjob><sequential><r id='r' class='" + R.class.getName() 43 + "' /><run job='${r}' /></sequential></oddjob>"; 44 45 Oddjob oj = new Oddjob(); 46 oj.setInput(new ByteArrayInputStream (xml.getBytes())); 47 oj.run(); 48 49 Object r = oj.lookup("r"); 50 assertEquals(new Boolean (true), PropertyUtils.getProperty(r, "ran")); 51 } 52 } 53 | Popular Tags |