Add property testing
Look at Hypothesis for property testing. Start with something basic on a single module, eg outliers.py or target.py.
Also try fuzzing, or maybe that's already part of it.
The basic implementation on one module should be okay for a first issue, if you've used Hypothesis or property testing before.
This looks quite interesting to and id be happy to do the tests for you as I love doing maths. I've never really contributed before so curios if there was a certain process with yourself that wasn't mentioned on the contribution file or if I need to ask for permission to do anything first so thought it wouldn't hurt messaging first.
@k31i Thanks a lot for offering to look at this.
Only process is really to work on a personal fork and make PR's back to this repo. I think if you start with something small in a new file in tests then it should be easy to see how things are going. Don't spend too much time before drafting a PR.
I would start with one or two of the simpler functions. Most of those are in utils.py:
-
update_p() -
is_numeric() -
generate_data() -
ordered_unique() -
zscore() -
cv() -
has_few_samples() -
stdev_to_proportion() -
proportion_to_stdev() -
is_clipped() -
has_few_samples() -
has_flat() -
has_monotonic()
And in target.py:
-
n_classes() -
is_binary() -
is_multiclass() -
is_multioutput()
Take a look through and see what you think.
Again, appreciate the interest, thank you.