Module org.junit.jupiter.params
Class AnnotationBasedArgumentsProvider<A extends java.lang.annotation.Annotation>
- java.lang.Object
-
- org.junit.jupiter.params.provider.AnnotationBasedArgumentsProvider<A>
-
- All Implemented Interfaces:
java.util.function.Consumer<A>
,ArgumentsProvider
,AnnotationConsumer<A>
- Direct Known Subclasses:
CsvArgumentsProvider
,CsvFileArgumentsProvider
,EnumArgumentsProvider
,MethodArgumentsProvider
,ValueArgumentsProvider
@API(status=EXPERIMENTAL, since="5.10") public abstract class AnnotationBasedArgumentsProvider<A extends java.lang.annotation.Annotation> extends java.lang.Object implements ArgumentsProvider, AnnotationConsumer<A>
AnnotationBasedArgumentsProvider
is an abstract base class forArgumentsProvider
implementations that also need to consume an annotation in order to provide the arguments.- Since:
- 5.10
- See Also:
ParameterizedTest
,ArgumentsSource
,Arguments
,ArgumentsProvider
,AnnotationConsumer
-
-
Field Summary
Fields Modifier and Type Field Description private A
annotation
-
Constructor Summary
Constructors Constructor Description AnnotationBasedArgumentsProvider()
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description void
accept(A annotation)
java.util.stream.Stream<? extends Arguments>
provideArguments(ExtensionContext context)
protected abstract java.util.stream.Stream<? extends Arguments>
provideArguments(ExtensionContext context, A annotation)
Provide aStream
ofArguments
— based on metadata in the provided annotation — to be passed to a@ParameterizedTest
method.
-
-
-
Field Detail
-
annotation
private A extends java.lang.annotation.Annotation annotation
-
-
Method Detail
-
accept
public final void accept(A annotation)
- Specified by:
accept
in interfacejava.util.function.Consumer<A extends java.lang.annotation.Annotation>
-
provideArguments
public final java.util.stream.Stream<? extends Arguments> provideArguments(ExtensionContext context)
Description copied from interface:ArgumentsProvider
- Specified by:
provideArguments
in interfaceArgumentsProvider
- Parameters:
context
- the current extension context; nevernull
- Returns:
- a stream of arguments; never
null
-
provideArguments
protected abstract java.util.stream.Stream<? extends Arguments> provideArguments(ExtensionContext context, A annotation)
Provide aStream
ofArguments
— based on metadata in the provided annotation — to be passed to a@ParameterizedTest
method.- Parameters:
context
- the current extension context; nevernull
annotation
- the annotation to process; nevernull
- Returns:
- a stream of arguments; never
null
-
-