junit5
junit5 copied to clipboard
#2622 Add new AnnotationBasedArgumentsProvider
Overview
This PR solves #2622
New abstract class AnnotationBasedArgumentsProvider
was added and all arguments providers that implemented
the AnnotationConsumer
interface were changed to extend from it.
The AnnotationConsumerInitializer
was adjusted to recognize the annotation present in AnnotationBasedArgumentsProvider#provideArguments
since it could not recognize the annotation in AnnotationBasedArgumentsProvider#accept
method because its type is generic.
Preconditions were added to provideArguments
and accept
methods, none of its arguments should be null
I'm not sure where to put the release notes, so I did not do it.
I hereby agree to the terms of the JUnit Contributor License Agreement.
Definition of Done
- [x] There are no TODOs left in the code
- [x] Method preconditions are checked and documented in the method's Javadoc
- [x] Coding conventions (e.g. for logging) have been followed
- [x] Change is covered by automated tests including corner cases, errors, and exception handling
- [x] Public API has Javadoc and
@API
annotations - [x] Change is documented in the User Guide and Release Notes
- [x] All continuous integration builds pass