diff --git a/documentation/modules/ROOT/partials/release-notes/release-notes-6.1.0-M2.adoc b/documentation/modules/ROOT/partials/release-notes/release-notes-6.1.0-M2.adoc index f55ef4a580f6..b18088de9484 100644 --- a/documentation/modules/ROOT/partials/release-notes/release-notes-6.1.0-M2.adoc +++ b/documentation/modules/ROOT/partials/release-notes/release-notes-6.1.0-M2.adoc @@ -47,6 +47,13 @@ repository on GitHub. * https://www.junit-pioneer.org/[JUnit Pioneer]'s `DefaultLocaleExtension` and `DefaultTimeZoneExtension` are now part of the JUnit Jupiter. Find examples in the xref:writing-tests/built-in-extensions.adoc#DefaultLocaleAndTimeZone[User Guide]. +* Support the creation of `Arguments` from iterables. These additions make it +easier to dynamically build arguments from collections when using +`@ParameterizedTest`: +** `Arguments.of(Iterable)` +** `Arguments.argumentsFrom(Iterable)` (alias) +** `Arguments.argumentSetFrom(String, Iterable)` +** `Arguments.toList()` — returns a mutable `List<@Nullable Object>` [[v6.1.0-M2-junit-vintage]] === JUnit Vintage diff --git a/junit-jupiter-params/src/main/java/org/junit/jupiter/params/provider/Arguments.java b/junit-jupiter-params/src/main/java/org/junit/jupiter/params/provider/Arguments.java index 9b11b7a84f92..007c6c09d129 100644 --- a/junit-jupiter-params/src/main/java/org/junit/jupiter/params/provider/Arguments.java +++ b/junit-jupiter-params/src/main/java/org/junit/jupiter/params/provider/Arguments.java @@ -10,9 +10,15 @@ package org.junit.jupiter.params.provider; +import static org.apiguardian.api.API.Status.EXPERIMENTAL; import static org.apiguardian.api.API.Status.MAINTAINED; import static org.apiguardian.api.API.Status.STABLE; +import java.util.ArrayList; +import java.util.Arrays; +import java.util.Collection; +import java.util.List; + import org.apiguardian.api.API; import org.jspecify.annotations.Nullable; import org.junit.platform.commons.util.Preconditions; @@ -26,10 +32,11 @@ * * @apiNote

This interface is specifically designed as a simple holder of * arguments for a parameterized test. Therefore, if you end up - * {@linkplain java.util.stream.Stream#map(java.util.function.Function) transforming} or + * {@linkplain java.util.stream.Stream#map(java.util.function.Function) transforming} + * or * {@linkplain java.util.stream.Stream#filter(java.util.function.Predicate) filtering} - * the arguments, you should consider using one of the following in intermediate - * steps: + * the arguments, you should consider using one of the following in + * intermediate steps: * *