-
Notifications
You must be signed in to change notification settings - Fork 915
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
Add empty test files for test reorganization #12288
Add empty test files for test reorganization #12288
Conversation
For ease of reference, the file names are:
|
In addition to organizing tests to align with the layout of our API reference, we currently recommend in our developer guide that:
Thus, for example, rather than placing tests for This way of organizing tests has both pros and cons, and I believe the cons outweigh the pros. I'm curious what others think.
|
I think major changes to the hierarchy of our internal classes should be uncommon enough to make moving tests a lot of overhead, although I do think we should certainly do so if such changes are ever made. And while such things are implementation details, I think if one is interacting with our tests directly it's more likely that such details might be relevant anyways. |
I'm less concerned about the implementation detail question since as @brandon-b-miller points out that is reasonably something that test writers should be aware of and I don't foresee it changing frequently enough that churn will be a concern. I do agree with the discoverability issue, though. I would be open to alternative solutions that do not involve additional code duplication (aside from importing helper functions, which I think is fine). There is also a reasonable question raised by @wence- about how strong the relationship between a Series and a DataFrame really is. Maybe it's more coincidental than by design that any particular test written for a DataFrame can actually be reused for a Series and vice versa since the two have meaningfully different semantics in lots of cases. That question may get easier to answer as we start consolidating tests though, so perhaps we just avoid the parent class files altogether for now and once we've made more progress see if consolidating further into those files makes sense? |
rerun tests |
Codecov Report
Additional details and impacted files@@ Coverage Diff @@
## branch-23.06 #12288 +/- ##
===============================================
Coverage ? 85.72%
===============================================
Files ? 155
Lines ? 24911
Branches ? 0
===============================================
Hits ? 21356
Misses ? 3555
Partials ? 0 Help us with your feedback. Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here. ☔ View full report in Codecov by Sentry. |
…-tests-directory-structure
…a/cudf into refactor-tests-directory-structure
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Only one question, I see that there are data subpackages for each file format (avro, orc, etc). Is that necessary? I could see value in subdirectories if you want to store data in those, but why do they need __init__.py
files? Other than that, this org looks good to me.
/merge |
Description
This PR adds empty test modules that match the "Test Organization" guidelines outlined in the developer guide. Follow-up PRs will move existing tests into these test modules.
While I have attempted to match the structure of our API reference as much a possible, there are small differences. For example, the API reference lumps together Reshaping, Sorting, and Transposing, while I opted to include two different modules for reshaping and sorting.
There are only a couple of instances where I needed to deviate from the structure though.
Checklist