BATCH-1713: re-hydrate step executions in job explorer

This commit is contained in:
Dave Syer
2011-04-05 09:01:40 +01:00
parent 9bbf1f5c72
commit a26bb2fbb1
4 changed files with 32 additions and 11 deletions

View File

@@ -21,18 +21,17 @@ import static org.easymock.EasyMock.expect;
import static org.easymock.EasyMock.expectLastCall;
import static org.easymock.EasyMock.replay;
import static org.easymock.EasyMock.verify;
import static org.junit.Assert.assertNull;
import java.util.Collections;
import junit.framework.TestCase;
import org.easymock.EasyMock;
import org.junit.Before;
import org.junit.Test;
import org.springframework.batch.core.JobExecution;
import org.springframework.batch.core.JobInstance;
import org.springframework.batch.core.JobParameters;
import org.springframework.batch.core.StepExecution;
import org.springframework.batch.core.explore.support.SimpleJobExplorer;
import org.springframework.batch.core.repository.dao.ExecutionContextDao;
import org.springframework.batch.core.repository.dao.JobExecutionDao;
import org.springframework.batch.core.repository.dao.JobInstanceDao;
@@ -44,7 +43,7 @@ import org.springframework.batch.core.repository.dao.StepExecutionDao;
* @author Dave Syer
*
*/
public class SimpleJobExplorerTests extends TestCase {
public class SimpleJobExplorerTests {
private SimpleJobExplorer jobExplorer;
@@ -61,6 +60,7 @@ public class SimpleJobExplorerTests extends TestCase {
private JobExecution jobExecution = new JobExecution(jobInstance, 1234L);
@Before
public void setUp() throws Exception {
jobExecutionDao = createMock(JobExecutionDao.class);
@@ -127,28 +127,33 @@ public class SimpleJobExplorerTests extends TestCase {
@Test
public void testFindRunningJobExecutions() throws Exception {
StepExecution stepExecution = jobExecution.createStepExecution("step");
expect(jobExecutionDao.findRunningJobExecutions("job")).andReturn(
Collections.singleton(jobExecution));
expect(jobInstanceDao.getJobInstance(jobExecution)).andReturn(
jobInstance);
stepExecutionDao.addStepExecutions(jobExecution);
expectLastCall();
replay(jobExecutionDao, jobInstanceDao, stepExecutionDao);
expect(ecDao.getExecutionContext(jobExecution)).andReturn(null);
expect(ecDao.getExecutionContext(stepExecution)).andReturn(null);
replay(jobExecutionDao, jobInstanceDao, stepExecutionDao, ecDao);
jobExplorer.findRunningJobExecutions("job");
verify(jobExecutionDao, jobInstanceDao, stepExecutionDao);
verify(jobExecutionDao, jobInstanceDao, stepExecutionDao, ecDao);
}
@Test
public void testFindJobExecutions() throws Exception {
StepExecution stepExecution = jobExecution.createStepExecution("step");
expect(jobExecutionDao.findJobExecutions(jobInstance)).andReturn(
Collections.singletonList(jobExecution));
expect(jobInstanceDao.getJobInstance(jobExecution)).andReturn(
jobInstance);
stepExecutionDao.addStepExecutions(jobExecution);
expect(ecDao.getExecutionContext(jobExecution)).andReturn(null);
expect(ecDao.getExecutionContext(stepExecution)).andReturn(null);
expectLastCall();
replay(jobExecutionDao, jobInstanceDao, stepExecutionDao);
replay(jobExecutionDao, jobInstanceDao, stepExecutionDao, ecDao);
jobExplorer.getJobExecutions(jobInstance);
verify(jobExecutionDao, jobInstanceDao, stepExecutionDao);
verify(jobExecutionDao, jobInstanceDao, stepExecutionDao, ecDao);
}
@Test