-
Notifications
You must be signed in to change notification settings - Fork 2.4k
Description
Hi there! This issue is a permanent issue dedicated as a hub for efforts to improve the quality of the test suite. If you have questions talk to the community on our Discord server.
If you have a question about a particular issue, or pull request just tag @python-poetry/triage in a comment.
This is a great issue to work on if you are new to the Poetry code base and want to start contributing. Over the years the Poetry test suite has grown significantly -- this means that there is significant a amount of code duplication that is hard to maintain and inefficient .
If you are submitting a pull request associated with this, please keep the pull requests small and modular. This means, do not do too much in one PR and try to do only closely related changes in on PR. Additionally, make sure you add Relates-to: (not Closes: or Fixes: or Resolves:) to your PR description.
Relates-to: #3155
If this is your first contribution here, please refer to #3061 before continuing.
Ongoing Improvements
Convert reused code/logic into fixtures
There is a significant amount of code and data duplication in the test suite that can be converted to pytest fixtures.
Adding coverage
There are certain code paths within the codebase that may not necessarily be covered within the test suite. You can.
a) Find them, and raise an issue to cover them.
b) (a) and also write some tests.
Known missing:
-
poetry buildcommand. - Add test coverage for tests/helpers.py #9161
Improve Parallel Safety
Presently, because a lot of tests generate and cleanup package metadata, or share resources the tests suite is not parallel execution safe. Any improvements towards this goal is always welcome. Most of this will be covered by proper use of fixtures, but identifying shared file resources being used and working on on-write copies would go a long way in this goal.