use of org.junit.platform.engine.test.event.ExecutionEventRecorder in project junit5 by junit-team.
the class BeforeAndAfterEachTests method afterEachMethodThrowsAnException.
@Test
void afterEachMethodThrowsAnException() {
LauncherDiscoveryRequest request = request().selectors(selectClass(ExceptionInAfterEachMethodTestCase.class)).build();
ExecutionEventRecorder eventRecorder = executeTests(request);
assertEquals(1, eventRecorder.getTestStartedCount(), "# tests started");
assertEquals(0, eventRecorder.getTestSuccessfulCount(), "# tests succeeded");
assertEquals(0, eventRecorder.getTestSkippedCount(), "# tests skipped");
assertEquals(0, eventRecorder.getTestAbortedCount(), "# tests aborted");
assertEquals(1, eventRecorder.getTestFailedCount(), "# tests failed");
// @formatter:off
assertEquals(asList("fooBeforeEachCallback", "beforeEachMethod", "test", // throws an exception.
"afterEachMethod", "fooAfterEachCallback"), callSequence, "wrong call sequence");
// @formatter:on
assertThat(actualExceptionInAfterEachCallback).containsInstanceOf(EnigmaException.class);
}
use of org.junit.platform.engine.test.event.ExecutionEventRecorder in project junit5 by junit-team.
the class BeforeAndAfterTestExecutionCallbackTests method beforeAndAfterTestExecutionCallbacksDeclaredOnSuperclassAndSubclass.
@Test
void beforeAndAfterTestExecutionCallbacksDeclaredOnSuperclassAndSubclass() {
LauncherDiscoveryRequest request = request().selectors(selectClass(ChildTestCase.class)).build();
ExecutionEventRecorder eventRecorder = executeTests(request);
assertEquals(1, eventRecorder.getTestStartedCount(), "# tests started");
assertEquals(1, eventRecorder.getTestSuccessfulCount(), "# tests succeeded");
assertEquals(0, eventRecorder.getTestSkippedCount(), "# tests skipped");
assertEquals(0, eventRecorder.getTestAbortedCount(), "# tests aborted");
assertEquals(0, eventRecorder.getTestFailedCount(), "# tests failed");
// @formatter:off
assertEquals(asList("fooBeforeTestExecutionCallback", "barBeforeTestExecutionCallback", "testChild", "barAfterTestExecutionCallback", "fooAfterTestExecutionCallback"), callSequence, "wrong call sequence");
// @formatter:on
}
use of org.junit.platform.engine.test.event.ExecutionEventRecorder in project junit5 by junit-team.
the class BeforeAndAfterTestExecutionCallbackTests method beforeAndAfterTestExecutionCallbacksDeclaredOnInterfaceAndClass.
@Test
void beforeAndAfterTestExecutionCallbacksDeclaredOnInterfaceAndClass() {
LauncherDiscoveryRequest request = request().selectors(selectClass(TestInterfaceTestCase.class)).build();
ExecutionEventRecorder eventRecorder = executeTests(request);
assertEquals(2, eventRecorder.getTestStartedCount(), "# tests started");
assertEquals(2, eventRecorder.getTestSuccessfulCount(), "# tests succeeded");
assertEquals(0, eventRecorder.getTestSkippedCount(), "# tests skipped");
assertEquals(0, eventRecorder.getTestAbortedCount(), "# tests aborted");
assertEquals(0, eventRecorder.getTestFailedCount(), "# tests failed");
// @formatter:off
assertEquals(asList(// Test Interface
"fooBeforeTestExecutionCallback", "barBeforeTestExecutionCallback", "defaultTestMethod", "barAfterTestExecutionCallback", "fooAfterTestExecutionCallback", // Test Class
"fooBeforeTestExecutionCallback", "barBeforeTestExecutionCallback", "localTestMethod", "barAfterTestExecutionCallback", "fooAfterTestExecutionCallback"), callSequence, "wrong call sequence");
// @formatter:on
}
use of org.junit.platform.engine.test.event.ExecutionEventRecorder in project junit5 by junit-team.
the class BeforeAndAfterTestExecutionCallbackTests method testMethodThrowsAnException.
@Test
void testMethodThrowsAnException() {
LauncherDiscoveryRequest request = request().selectors(selectClass(ExceptionInTestMethodTestCase.class)).build();
ExecutionEventRecorder eventRecorder = executeTests(request);
assertEquals(1, eventRecorder.getTestStartedCount(), "# tests started");
assertEquals(0, eventRecorder.getTestSuccessfulCount(), "# tests succeeded");
assertEquals(0, eventRecorder.getTestSkippedCount(), "# tests skipped");
assertEquals(0, eventRecorder.getTestAbortedCount(), "# tests aborted");
assertEquals(1, eventRecorder.getTestFailedCount(), "# tests failed");
// @formatter:off
assertEquals(asList("beforeEachMethod", "fooBeforeTestExecutionCallback", // throws an exception.
"test", "fooAfterTestExecutionCallback", "afterEachMethod"), callSequence, "wrong call sequence");
// @formatter:on
assertNotNull(actualExceptionInAfterTestExecution, "test exception");
assertTrue(actualExceptionInAfterTestExecution.isPresent(), "test exception should be present");
assertEquals(EnigmaException.class, actualExceptionInAfterTestExecution.get().getClass());
}
use of org.junit.platform.engine.test.event.ExecutionEventRecorder in project junit5 by junit-team.
the class BeforeAndAfterTestExecutionCallbackTests method beforeAndAfterTestExecutionCallbacks.
@Test
void beforeAndAfterTestExecutionCallbacks() {
LauncherDiscoveryRequest request = request().selectors(selectClass(OuterTestCase.class)).build();
ExecutionEventRecorder eventRecorder = executeTests(request);
assertEquals(2, eventRecorder.getTestStartedCount(), "# tests started");
assertEquals(2, eventRecorder.getTestSuccessfulCount(), "# tests succeeded");
assertEquals(0, eventRecorder.getTestSkippedCount(), "# tests skipped");
assertEquals(0, eventRecorder.getTestAbortedCount(), "# tests aborted");
assertEquals(0, eventRecorder.getTestFailedCount(), "# tests failed");
// @formatter:off
assertEquals(asList(// OuterTestCase
"beforeEachMethodOuter", "fooBeforeTestExecutionCallback", "barBeforeTestExecutionCallback", "testOuter", "barAfterTestExecutionCallback", "fooAfterTestExecutionCallback", "afterEachMethodOuter", // InnerTestCase
"beforeEachMethodOuter", "beforeEachMethodInner", "fooBeforeTestExecutionCallback", "barBeforeTestExecutionCallback", "fizzBeforeTestExecutionCallback", "testInner", "fizzAfterTestExecutionCallback", "barAfterTestExecutionCallback", "fooAfterTestExecutionCallback", "afterEachMethodInner", "afterEachMethodOuter"), callSequence, "wrong call sequence");
// @formatter:on
}
Aggregations