StyleTTS2
StyleTTS2 copied to clipboard
Add pytest integration/testing foundation layer
Pull Request Type
Dictionary of Definitions here
- [ ] Just a heads up 🙆
- [ ] Sanity check 🏃♂️
- [ ] Work in progress (WIP) 🏗️
- [ ] Early feedback ✍️
- [x] Line-by-line review 📝
- [ ] Pull request to a pull request 🔀
Description
This PR addresses the feature request issue via here: https://github.com/yl4579/StyleTTS2/issues/163 .
The motivation for this PR is that as a styleTTS2 contributor/user I want to be able to run tests to ensure that my code doesn't break anything critical, as well as if myself or other contributors fix a bug/issue, we want regression testing, and the ability to encode the bug fix reflected in the tests.
More BG info on this in the aforementioned tagged issue.
The small amount of base unit tests was intended as this PR's main aims is to integrate pytest, offer a clean folder structure for the tests, and additional useful documentation.
Screenshots
The test suite is working as intended! 🚀
Context Links
- Add links & resources such as documentation of libraries, etc.
- PyTest
Checklist before requesting a review
- [x] I have performed a self-review of my code
- [x] If it is a core feature, I have added thorough tests.
- [x] Extended the README / documentation, if necessary
- [ ] Do we need to implement analytics?
- [x] My changes generate no new warnings
- [x] Is the code readable? Prefer to see more self-explanatory and consistency
- [x] Is the code tested properly? i.e. where appropriate, we're testing well-explained failures, behaviours, fixes, etc
Caveats/Notes
Talk about things reviewers should be aware about (Please include here if you created a new environment variables and ensure you have communicated this secret to the team)
I believe in the boy scout mentality (leave your camp site cleaner than you found it) so I removed some dead/unused imports and code in the relevant files that I touched.
Prompts
- Where would you like the reviewer to focus their energy on?
- Any particular areas of code that you'd like to reduce complexity, technical debt, risk, or needs further optimization?
Let me know feedback about this, and what else would folks like to see. I think pytests should be more than sufficient for unit and integration tests. For more training and model specific tests, something like PyTorch Ignite could be used.
Thanks for your contribution. Could you explain a little more what changes you have made in your PR?
Closing this stale PRClosing this stale PR