下面列出了org.junit.jupiter.api.DynamicTest#dynamicTest() 实例代码,或者点击链接到github查看源代码,也可以在右侧发表评论。
@Override
public DynamicTest next() {
ScenarioExecutionUnit unit = iterator.next();
return DynamicTest.dynamicTest(unit.scenario.getNameForReport(), () -> {
featureUnit.run(unit);
boolean failed = unit.result.isFailed();
if (unit.isLast() || failed) {
featureUnit.stop();
exec.result.printStats(null);
Engine.saveResultHtml(FileUtils.getBuildDir() + File.separator + "surefire-reports", exec.result, null);
}
if (failed) {
Assertions.fail(unit.result.getError().getMessage());
}
});
}
<N extends Node> DynamicTest create(Class<N> nodeClass, Verifier<N> verifier) {
return DynamicTest.dynamicTest(nodeClass.getName(), () -> {
@SuppressWarnings("unchecked")
NodeVisitor<Object, Object, RuntimeException> visitor = mock(NodeVisitor.class, CALLS_REAL_METHODS);
N node = mock(nodeClass, CALLS_REAL_METHODS);
visitor.visit(node, null);
verify(visitor).visit(node, null);
node.accept(visitor, null);
verifier.verify(verify(visitor, times(2)), node, null);
verifyNoMoreInteractions(visitor);
});
}
@TestFactory
Stream<DynamicTest> should_NotDetectCorpusChristiAsHoliday_When_CorpusChristiIsDisabled() {
DynamicTest year1980 =
DynamicTest.dynamicTest(
"year 1980",
() -> assertThat(converter.isGermanHoliday(LocalDate.parse("1980-06-05"))).isFalse());
DynamicTest year2020 =
DynamicTest.dynamicTest(
"year 2020",
() -> assertThat(converter.isGermanHoliday(LocalDate.parse("2020-06-11"))).isFalse());
return Stream.of(year1980, year2020);
}
@TestFactory
Stream<DynamicNode> should_DetectCorpusChristiAsHoliday_When_CorpusChristiIsEnabled() {
WorkingDaysToDaysConverter converter = new WorkingDaysToDaysConverter(true, true);
DynamicTest year1980 =
DynamicTest.dynamicTest(
"year 1980",
() -> assertThat(converter.isGermanHoliday(LocalDate.parse("1980-06-05"))).isTrue());
DynamicTest year2020 =
DynamicTest.dynamicTest(
"year 2020",
() -> assertThat(converter.isGermanHoliday(LocalDate.parse("2020-06-11"))).isTrue());
return Stream.of(year1980, year2020);
}
private DynamicTest toDynamicTest(OperatorScenario<I, PI, O, PO> scenario, ThrowingRunnable runnable) {
return DynamicTest.dynamicTest(scenario.description(), () -> {
if (scenario.stack != null) {
System.out.println("\tat " + scenario.stack.getStackTrace()[2]);
}
runnable.run();
});
}