New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
org.junitpioneer.jupiter.params.RangeClass
should be package-private
#564
Comments
If I remember correctly, it's public so people can make their own range sources. Does the documentation have anything on that? 🤔 |
The documentation does not seem to mention that, and in its current form users cannot create their own range sources because neither |
I recently did a review of our classes and it seems some of them were unnecessarily |
Thank for pointing this out, @Marcono1234. This was indeed an implementation-only class. Re |
It appears
org.junitpioneer.jupiter.params.RangeClass
is only used internally as meta-annotation, however currently it ispublic
.This leads to the inconvenient situation where
RangeClass
refers to the internalRange
, which might be confusing for users, see:https://javadoc.io/doc/org.junit-pioneer/junit-pioneer/latest/org/junitpioneer/jupiter/params/RangeClass.html
Therefore the annotation type should probably be made package-private and its
@Documented
annotation should be removed.A similar issue exists for
org.junitpioneer.jupiter.params.RangeSourceArgumentsProvider
which is visible through the documented annotationArgumentsSource
on theNumericTypeRangeSource
classes (e.g.ShortRangeSource
). However, there it cannot be easily solved without makingRangeSourceArgumentsProvider
public, which might not be desired, so maybe there this broken reference is acceptable.The text was updated successfully, but these errors were encountered: