IN PROGRESS - BATCH-825: Modify JobLauncher contract to not throw exception on job failure.
removed onErrorInStep callback, afterStep is called regardless of success/failure
This commit is contained in:
@@ -83,19 +83,4 @@ public class CompositeStepExecutionListenerTests extends TestCase {
|
||||
assertEquals(1, list.size());
|
||||
}
|
||||
|
||||
/**
|
||||
* Test method for
|
||||
* {@link org.springframework.batch.core.listener.CompositeStepExecutionListener#beforeStep(StepExecution)}.
|
||||
*/
|
||||
public void testOnError() {
|
||||
listener.register(new StepExecutionListenerSupport() {
|
||||
public ExitStatus onErrorInStep(StepExecution stepExecution, Throwable e) {
|
||||
list.add("foo");
|
||||
return null;
|
||||
}
|
||||
});
|
||||
listener.onErrorInStep(null, new RuntimeException());
|
||||
assertEquals(1, list.size());
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@@ -126,37 +126,6 @@ public class MulticasterBatchListenerTests {
|
||||
assertEquals(1, count);
|
||||
}
|
||||
|
||||
/**
|
||||
* Test method for
|
||||
* {@link org.springframework.batch.core.listener.MulticasterBatchListener#onErrorInStep(org.springframework.batch.core.StepExecution, java.lang.Throwable)}
|
||||
* .
|
||||
*/
|
||||
@Test
|
||||
public void testOnErrorInStep() {
|
||||
multicast.onErrorInStep(null, new RuntimeException("foo"));
|
||||
assertEquals(1, count);
|
||||
}
|
||||
|
||||
/**
|
||||
* Test method for
|
||||
* {@link org.springframework.batch.core.listener.MulticasterBatchListener#onErrorInStep(org.springframework.batch.core.StepExecution, java.lang.Throwable)}
|
||||
* .
|
||||
*/
|
||||
@Test
|
||||
public void testOnErrorInStepFails() {
|
||||
error = true;
|
||||
try {
|
||||
multicast.onErrorInStep(null, new RuntimeException("foo"));
|
||||
fail("Expected StepListenerFailedException");
|
||||
}
|
||||
catch (StepListenerFailedException e) {
|
||||
// expected
|
||||
String message = e.getCause().getMessage();
|
||||
assertEquals("Wrong message: " + message, "foo", message);
|
||||
}
|
||||
assertEquals(1, count);
|
||||
}
|
||||
|
||||
/**
|
||||
* Test method for
|
||||
* {@link org.springframework.batch.core.listener.MulticasterBatchListener#afterChunk()}
|
||||
|
||||
@@ -175,15 +175,15 @@ public class AbstractStepTests extends TestCase {
|
||||
assertEquals("listener2#beforeStep", events.get(i++));
|
||||
assertEquals("open", events.get(i++));
|
||||
assertEquals("doExecute", events.get(i++));
|
||||
assertEquals("listener2#onErrorInStep", events.get(i++));
|
||||
assertEquals("listener1#onErrorInStep", events.get(i++));
|
||||
assertEquals("listener2#afterStep", events.get(i++));
|
||||
assertEquals("listener1#afterStep", events.get(i++));
|
||||
assertEquals("close", events.get(i++));
|
||||
assertEquals(7, events.size());
|
||||
|
||||
assertEquals(ExitStatus.FAILED.getExitCode(), execution.getExitStatus().getExitCode());
|
||||
|
||||
assertTrue("Execution context modifications made by listener should be persisted", repository.saved
|
||||
.containsKey("onErrorInStep"));
|
||||
.containsKey("afterStep"));
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -209,15 +209,15 @@ public class AbstractStepTests extends TestCase {
|
||||
assertEquals("listener2#beforeStep", events.get(i++));
|
||||
assertEquals("open", events.get(i++));
|
||||
assertEquals("doExecute", events.get(i++));
|
||||
assertEquals("listener2#onErrorInStep", events.get(i++));
|
||||
assertEquals("listener1#onErrorInStep", events.get(i++));
|
||||
assertEquals("listener2#afterStep", events.get(i++));
|
||||
assertEquals("listener1#afterStep", events.get(i++));
|
||||
assertEquals("close", events.get(i++));
|
||||
assertEquals(7, events.size());
|
||||
|
||||
assertEquals("JOB_INTERRUPTED", execution.getExitStatus().getExitCode());
|
||||
|
||||
assertTrue("Execution context modifications made by listener should be persisted", repository.saved
|
||||
.containsKey("onErrorInStep"));
|
||||
.containsKey("afterStep"));
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
Reference in New Issue
Block a user