Interface ArgumentsProvider

All Known Implementing Classes:
AnnotationBasedArgumentsProvider

@API(status=STABLE, since="5.7") public interface ArgumentsProvider
An ArgumentsProvider is responsible for providing a stream of arguments to be passed to a @ParameterizedClass or @ParameterizedTest.

An ArgumentsProvider can be registered via the @ArgumentsSource annotation.

Implementations must provide a no-args constructor or a single unambiguous constructor to use parameter resolution.

Since:
5.0
See Also:
  • Method Details

    • provideArguments

      @Deprecated @API(status=DEPRECATED, since="5.13") default Stream<? extends Arguments> provideArguments(org.junit.jupiter.api.extension.ExtensionContext context) throws Exception
      Deprecated.
      Provide a Stream of Arguments to be passed to a @ParameterizedTest method.
      Parameters:
      context - the current extension context; never null
      Returns:
      a stream of arguments; never null
      Throws:
      Exception
    • provideArguments

      @API(status=MAINTAINED, since="5.13.3") default Stream<? extends Arguments> provideArguments(ParameterDeclarations parameters, org.junit.jupiter.api.extension.ExtensionContext context) throws Exception
      Provide a Stream of Arguments to be passed to a @ParameterizedClass or @ParameterizedTest.
      Parameters:
      parameters - the parameter declarations for the parameterized class or test; never null
      context - the current extension context; never null
      Returns:
      a stream of arguments; never null
      Throws:
      Exception
      Since:
      5.13