Metadata-Version: 2.4
Name: pytest-dirty
Version: 0.0.1
Summary: Static import analysis for thrifty testing.
Author-email: Daniel Bershatsky <d.bershatsky2@skoltech.ru>
Maintainer-email: Daniel Bershatsky <d.bershatsky2@skoltech.ru>
License: MIT
Project-URL: Homepage, https://github.com/daskol/pytest-dirty
Project-URL: Repository, https://github.com/daskol/pytest-dirty.git
Classifier: Development Status :: 3 - Alpha
Classifier: Intended Audience :: Developers
Classifier: Intended Audience :: Information Technology
Classifier: License :: OSI Approved :: MIT License
Classifier: Natural Language :: English
Classifier: Operating System :: POSIX
Classifier: Operating System :: Unix
Classifier: Operating System :: MacOS
Classifier: Programming Language :: Python
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Topic :: Software Development
Classifier: Typing :: Typed
Requires-Python: <4,>=3.10
Description-Content-Type: text/markdown
License-File: LICENSE
Requires-Dist: tomli; python_version < "3.11"
Provides-Extra: dev
Requires-Dist: pytest>=8.2; extra == "dev"
Dynamic: license-file

# pytest-dirty

*Static import analysis for thrifty testing.*

## Overview

With `pytest>=8.2` and `git`, one can easily find what Python files have been
changed and what test files to run.

```shell
# 1. List files changed in a pull request.
git diff --name-only main..<pr-branch> > changed.txt
# 2. Run `pytest-dirty` to know what chaned files of package `<package>` affect
tests in `tests` directory must be run.
pytest-dirty -s <package> -t tests changed.txt > affected.txt
# 3. Run tests with pytest.
pytest -s -vv @affected.txt
```
