JUnit ErrorCollector example
package com.foo; | |
import org.junit.Rule; | |
import org.junit.Test; | |
import org.junit.rules.ErrorCollector; | |
import static org.hamcrest.Matchers.equalTo; | |
/** | |
* Created: 12/04/19 17:12 | |
* | |
* @author chris | |
*/ | |
public class MyTest { | |
@Rule | |
public ErrorCollector collector = new ErrorCollector(); | |
@Test | |
public void myTest() { | |
collector.checkThat("a", equalTo("b")); | |
collector.checkThat(1, equalTo(2)); | |
} | |
} |
java.lang.AssertionError: | |
Expected: "b" | |
got: "a" | |
<Click to see difference> | |
at org.junit.Assert.assertThat(Assert.java:780) | |
at org.junit.rules.ErrorCollector$1.call(ErrorCollector.java:66) | |
at org.junit.rules.ErrorCollector.checkSucceeds(ErrorCollector.java:79) | |
at org.junit.rules.ErrorCollector.checkThat(ErrorCollector.java:64) | |
at org.junit.rules.ErrorCollector.checkThat(ErrorCollector.java:55) | |
at com.foo.MyTest.myTest(MyTest.java:20) | |
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) | |
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) | |
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) | |
at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:45) | |
at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:15) | |
at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:42) | |
at org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:20) | |
at org.junit.rules.Verifier$1.evaluate(Verifier.java:33) | |
at org.junit.rules.RunRules.evaluate(RunRules.java:18) | |
at org.junit.runners.ParentRunner.runLeaf(ParentRunner.java:263) | |
at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:68) | |
at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:47) | |
at org.junit.runners.ParentRunner$3.run(ParentRunner.java:231) | |
at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:60) | |
at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:229) | |
at org.junit.runners.ParentRunner.access$000(ParentRunner.java:50) | |
at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:222) | |
at org.junit.runners.ParentRunner.run(ParentRunner.java:300) | |
at org.junit.runner.JUnitCore.run(JUnitCore.java:157) | |
at com.intellij.junit4.JUnit4IdeaTestRunner.startRunnerWithArgs(JUnit4IdeaTestRunner.java:76) | |
at com.intellij.rt.execution.junit.JUnitStarter.prepareStreamsAndStart(JUnitStarter.java:182) | |
at com.intellij.rt.execution.junit.JUnitStarter.main(JUnitStarter.java:62) | |
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) | |
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) | |
at com.intellij.rt.execution.application.AppMain.main(AppMain.java:120) | |
java.lang.AssertionError: | |
Expected: <2> | |
got: <1> | |
<Click to see difference> | |
at org.junit.Assert.assertThat(Assert.java:780) | |
at org.junit.rules.ErrorCollector$1.call(ErrorCollector.java:66) | |
at org.junit.rules.ErrorCollector.checkSucceeds(ErrorCollector.java:79) | |
at org.junit.rules.ErrorCollector.checkThat(ErrorCollector.java:64) | |
at org.junit.rules.ErrorCollector.checkThat(ErrorCollector.java:55) | |
at com.foo.MyTest.myTest(MyTest.java:21) | |
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) | |
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) | |
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) | |
at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:45) | |
at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:15) | |
at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:42) | |
at org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:20) | |
at org.junit.rules.Verifier$1.evaluate(Verifier.java:33) | |
at org.junit.rules.RunRules.evaluate(RunRules.java:18) | |
at org.junit.runners.ParentRunner.runLeaf(ParentRunner.java:263) | |
at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:68) | |
at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:47) | |
at org.junit.runners.ParentRunner$3.run(ParentRunner.java:231) | |
at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:60) | |
at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:229) | |
at org.junit.runners.ParentRunner.access$000(ParentRunner.java:50) | |
at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:222) | |
at org.junit.runners.ParentRunner.run(ParentRunner.java:300) | |
at org.junit.runner.JUnitCore.run(JUnitCore.java:157) | |
at com.intellij.junit4.JUnit4IdeaTestRunner.startRunnerWithArgs(JUnit4IdeaTestRunner.java:76) | |
at com.intellij.rt.execution.junit.JUnitStarter.prepareStreamsAndStart(JUnitStarter.java:182) | |
at com.intellij.rt.execution.junit.JUnitStarter.main(JUnitStarter.java:62) | |
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) | |
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) | |
at com.intellij.rt.execution.application.AppMain.main(AppMain.java:120) |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
This comment has been minimized.
Thank you. This is useful.