use of org.junit.platform.launcher.TestPlan in project junit5 by junit-team.
the class DefaultLauncherTests method discoverTestPlanForEngineThatReturnsNullForItsRootDescriptor.
@Test
void discoverTestPlanForEngineThatReturnsNullForItsRootDescriptor() {
TestEngine engine = new TestEngineStub() {
@Override
public TestDescriptor discover(org.junit.platform.engine.EngineDiscoveryRequest discoveryRequest, UniqueId uniqueId) {
return null;
}
};
TestPlan testPlan = createLauncher(engine).discover(request().build());
assertThat(testPlan.getRoots()).hasSize(0);
}
use of org.junit.platform.launcher.TestPlan in project junit5 by junit-team.
the class RunListenerAdapterTests method notifiedWithCorrectNamesWhenMethodExecutionStarted.
@Test
void notifiedWithCorrectNamesWhenMethodExecutionStarted() throws Exception {
ArgumentCaptor<ReportEntry> entryCaptor = ArgumentCaptor.forClass(ReportEntry.class);
TestPlan testPlan = TestPlan.from(Collections.singletonList(new EngineDescriptor(newId(), "Luke's Plan")));
adapter.testPlanExecutionStarted(testPlan);
TestIdentifier methodIdentifier = identifiersAsParentOnTestPlan(testPlan, newClassDescriptor(), newMethodDescriptor());
adapter.executionStarted(methodIdentifier);
verify(listener).testStarting(entryCaptor.capture());
ReportEntry entry = entryCaptor.getValue();
assertEquals(MY_TEST_METHOD_NAME, entry.getName());
assertEquals(MyTestClass.class.getName(), entry.getSourceName());
assertNull(entry.getStackTraceWriter());
}
use of org.junit.platform.launcher.TestPlan in project junit5 by junit-team.
the class RunListenerAdapterTests method notifiedLazilyForTestSetWhenFirstTestWithoutClassDescriptorParentStarted.
@Test
void notifiedLazilyForTestSetWhenFirstTestWithoutClassDescriptorParentStarted() {
EngineDescriptor engine = newEngineDescriptor();
TestDescriptor parent = newTestDescriptor(engine.getUniqueId().append("container", "noClass"), "parent", Type.CONTAINER);
engine.addChild(parent);
TestDescriptor child1 = newTestDescriptor(parent.getUniqueId().append("test", "child1"), "child1", Type.TEST);
parent.addChild(child1);
TestDescriptor child2 = newTestDescriptor(parent.getUniqueId().append("test", "child2"), "child2", Type.TEST);
parent.addChild(child2);
TestPlan plan = TestPlan.from(Collections.singletonList(engine));
adapter.testPlanExecutionStarted(plan);
adapter.executionStarted(TestIdentifier.from(engine));
adapter.executionStarted(TestIdentifier.from(parent));
verifyZeroInteractions(listener);
adapter.executionStarted(TestIdentifier.from(child1));
InOrder inOrder = inOrder(listener);
inOrder.verify(listener).testSetStarting(new SimpleReportEntry(JUnitPlatformProvider.class.getName(), "parent"));
inOrder.verify(listener).testStarting(new SimpleReportEntry("parent", "child1"));
inOrder.verifyNoMoreInteractions();
adapter.executionFinished(TestIdentifier.from(child1), successful());
verify(listener).testSucceeded(new SimpleReportEntry("parent", "child1"));
verifyNoMoreInteractions(listener);
adapter.executionStarted(TestIdentifier.from(child2));
verify(listener).testStarting(new SimpleReportEntry("parent", "child2"));
verifyNoMoreInteractions(listener);
adapter.executionFinished(TestIdentifier.from(child2), successful());
verify(listener).testSucceeded(new SimpleReportEntry("parent", "child2"));
verifyNoMoreInteractions(listener);
adapter.executionFinished(TestIdentifier.from(parent), successful());
verify(listener).testSetCompleted(new SimpleReportEntry(JUnitPlatformProvider.class.getName(), "parent"));
verifyNoMoreInteractions(listener);
adapter.executionFinished(TestIdentifier.from(engine), successful());
verifyNoMoreInteractions(listener);
}
use of org.junit.platform.launcher.TestPlan in project junit5 by junit-team.
the class RunListenerAdapterTests method notifiedWithCompatibleNameForMethodWithArguments.
@Test
void notifiedWithCompatibleNameForMethodWithArguments() throws Exception {
ArgumentCaptor<ReportEntry> entryCaptor = ArgumentCaptor.forClass(ReportEntry.class);
TestPlan testPlan = TestPlan.from(Collections.singletonList(new EngineDescriptor(newId(), "Luke's Plan")));
adapter.testPlanExecutionStarted(testPlan);
TestIdentifier methodIdentifier = identifiersAsParentOnTestPlan(testPlan, newClassDescriptor(), newMethodDescriptor(String.class));
adapter.executionStarted(methodIdentifier);
verify(listener).testStarting(entryCaptor.capture());
ReportEntry entry = entryCaptor.getValue();
assertEquals(MY_TEST_METHOD_NAME + "{String}", entry.getName());
assertEquals(MyTestClass.class.getName(), entry.getSourceName());
assertNull(entry.getStackTraceWriter());
}
use of org.junit.platform.launcher.TestPlan in project spock by spockframework.
the class SpockHelloWorldTest method verifyErrorExample.
@Test
void verifyErrorExample() {
Launcher launcher = LauncherFactory.create(LauncherConfig.builder().enableTestEngineAutoRegistration(false).enableTestExecutionListenerAutoRegistration(false).addTestEngines(new SpockEngine()).build());
TestPlan testPlan = launcher.discover(LauncherDiscoveryRequestBuilder.request().selectors(selectClass(ErrorTestCase.class)).build());
assertEquals(1, testPlan.getChildren(testPlan.getRoots().iterator().next()).size());
execute(selectClass(StepwiseTestCase.class), stats -> stats.started(4).succeeded(3).failed(1).skipped(1));
}
Aggregations