Add test for PartitionStep factory

This commit is contained in:
dsyer
2009-12-09 07:44:09 +00:00
parent 8e1f054bd2
commit 5b4107a873
2 changed files with 25 additions and 3 deletions

View File

@@ -24,7 +24,11 @@ import java.util.HashMap;
import org.junit.Test;
import org.springframework.batch.core.StepListener;
import org.springframework.batch.core.listener.StepExecutionListenerSupport;
import org.springframework.batch.core.partition.support.PartitionStep;
import org.springframework.batch.core.partition.support.SimplePartitioner;
import org.springframework.batch.core.partition.support.TaskExecutorPartitionHandler;
import org.springframework.batch.core.step.JobRepositorySupport;
import org.springframework.batch.core.step.StepSupport;
import org.springframework.batch.core.step.item.ChunkOrientedTasklet;
import org.springframework.batch.core.step.tasklet.TaskletStep;
import org.springframework.batch.item.ItemStream;
@@ -215,4 +219,24 @@ public class StepParserStepFactoryBeanTests {
assertTrue(tasklet instanceof ChunkOrientedTasklet<?>);
}
@Test
public void testPartitionStep() throws Exception {
StepParserStepFactoryBean<Object, Object> fb = new StepParserStepFactoryBean<Object, Object>();
fb.setBeanName("step1");
fb.setAllowStartIfComplete(true);
fb.setJobRepository(new JobRepositorySupport());
fb.setStartLimit(5);
fb.setListeners(new StepListener[] { new StepExecutionListenerSupport() });
fb.setTaskExecutor(new SyncTaskExecutor());
SimplePartitioner partitioner = new SimplePartitioner();
fb.setPartitioner(partitioner);
fb.setStep(new StepSupport("foo"));
Object step = fb.getObject();
assertTrue(step instanceof PartitionStep);
Object handler = ReflectionTestUtils.getField(step, "partitionHandler");
assertTrue(handler instanceof TaskExecutorPartitionHandler);
}
}