Package org.junit.rules
Class ErrorCollector
- java.lang.Object
-
- org.junit.rules.Verifier
-
- org.junit.rules.ErrorCollector
-
- All Implemented Interfaces:
TestRule
public class ErrorCollector extends Verifier
The ErrorCollector rule allows execution of a test to continue after the first problem is found (for example, to collect _all_ the incorrect rows in a table, and report them all at once):public static class UsesErrorCollectorTwice { @Rule public ErrorCollector collector= new ErrorCollector(); @Test public void example() { collector.addError(new Throwable("first thing went wrong")); collector.addError(new Throwable("second thing went wrong")); collector.checkThat(getResult(), not(containsString("ERROR!"))); // all lines will run, and then a combined failure logged at the end. } }
- Since:
- 4.7
-
-
Constructor Summary
Constructors Constructor Description ErrorCollector()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
addError(java.lang.Throwable error)
Adds a Throwable to the table.<T> T
checkSucceeds(java.util.concurrent.Callable<T> callable)
Adds to the table the exception, if any, thrown fromcallable
.<T> void
checkThat(java.lang.String reason, T value, org.hamcrest.Matcher<T> matcher)
Adds a failure with the givenreason
to the table ifmatcher
does not matchvalue
.<T> void
checkThat(T value, org.hamcrest.Matcher<T> matcher)
Adds a failure to the table ifmatcher
does not matchvalue
.void
checkThrows(java.lang.Class<? extends java.lang.Throwable> expectedThrowable, ThrowingRunnable runnable)
Adds a failure to the table ifrunnable
does not throw an exception of typeexpectedThrowable
when executed.protected void
verify()
Override this to add verification logic.
-
-
-
Constructor Detail
-
ErrorCollector
public ErrorCollector()
-
-
Method Detail
-
verify
protected void verify() throws java.lang.Throwable
Description copied from class:Verifier
Override this to add verification logic. Overrides should throw an exception to indicate that verification failed.
-
addError
public void addError(java.lang.Throwable error)
Adds a Throwable to the table. Execution continues, but the test will fail at the end.
-
checkThat
public <T> void checkThat(T value, org.hamcrest.Matcher<T> matcher)
Adds a failure to the table ifmatcher
does not matchvalue
. Execution continues, but the test will fail at the end if the match fails.
-
checkThat
public <T> void checkThat(java.lang.String reason, T value, org.hamcrest.Matcher<T> matcher)
Adds a failure with the givenreason
to the table ifmatcher
does not matchvalue
. Execution continues, but the test will fail at the end if the match fails.
-
checkSucceeds
public <T> T checkSucceeds(java.util.concurrent.Callable<T> callable)
Adds to the table the exception, if any, thrown fromcallable
. Execution continues, but the test will fail at the end ifcallable
threw an exception.
-
checkThrows
public void checkThrows(java.lang.Class<? extends java.lang.Throwable> expectedThrowable, ThrowingRunnable runnable)
Adds a failure to the table ifrunnable
does not throw an exception of typeexpectedThrowable
when executed. Execution continues, but the test will fail at the end if the runnable does not throw an exception, or if it throws a different exception.- Parameters:
expectedThrowable
- the expected type of the exceptionrunnable
- a function that is expected to throw an exception when executed- Since:
- 4.13
-
-