A LibCST codemod to remove pytest fixtures applied via the usefixtures decorator, as well as its parametrizations.
Project description
pytest fixture remove codemod
A LibCST codemod to remove pytest fixtures applied via the usefixtures
decorator,
as well as its parametrizations.
[!NOTE] Only fixture usage will be removed, not its definition.
Usage
This package requires Python >= 3.8.
Install from PyPI.
pip install pytest-fixture-remover
Run against your tests, specifying a fixture to remove.
python -m libcst.tool codemod -x pytest_fixture_remover.RemovePytestFixtureCommand my_project_tests/ --name clean_db
Add --no-format
option to stop LibCST from running Black against modified code.
Before/after examples can be found in the tests.test_command
module.
Note on formatting
This codemod assumes that the target code is formatted with Black using the magic trailing comma. It may change the existing formatting in several ways:
- When removing a fixture name from the
usefixtures
call. - When removing a value that parametrizes the fixture via
parametrize
.
In both cases the behavior is the same and obeys the following rules:
- If there's only one item left after modifying, remove the trailing comma.
- If there are multiple items left after modifying and the removed item was the last, preserve the last item's comma (or its absence).
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Hashes for pytest_fixture_remover-1.0.1.post1.tar.gz
Algorithm | Hash digest | |
---|---|---|
SHA256 | 2783377e0e1d6271eb26db2a88c413fe30de22cb37eb34a78f40a3d5a05e5748 |
|
MD5 | 35a81b2428ce82f946c48d0397f788cd |
|
BLAKE2b-256 | 8682a167888f4a1efd5ad4c52bb590d43c9f69a4c41dab0f2e70ca425c89933e |
Hashes for pytest_fixture_remover-1.0.1.post1-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | d7e8a8fc4213b2e32464e506c50c9c11a29508d24d06e8fbf5cc92dd9167ba5c |
|
MD5 | c61738ce0e5d02f35eb6bbfa78d7e0f9 |
|
BLAKE2b-256 | 2447d333e8727610d5e14c13390a637711765010fcb70c632d810de2058069c2 |