Metadata-Version: 2.4
Name: suite-doctor
Version: 0.1.2
Summary: A pytest-integrated health checkup tool — coverage, flaky tests, slowest tests, and clean CLI summaries.
Author-email: Randy Christenhusz <rchristenhusz@gmail.com>
License: MIT
Project-URL: Homepage, https://github.com/onederlnd/suite-doctor
Project-URL: Repository, https://github.com/onederlnd/suite-doctor
Keywords: pytest,testing,cli,coverage,test-health
Classifier: Development Status :: 3 - Alpha
Classifier: Environment :: Console
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: MIT License
Classifier: Programming Language :: Python :: 3
Classifier: Topic :: Software Development :: Testing
Requires-Python: >=3.11
Description-Content-Type: text/markdown
Requires-Dist: pytest
Requires-Dist: pytest-json-report
Requires-Dist: pytest-cov
Requires-Dist: rich

# suite-doctor

A pytest-integrated health checkup tool. Runs your existing test suite via `pytest` and reports on its health — not another test framework, a wrapper around the one you already use.

## Status

Core pipeline working: runs pytest, parses results, prints a styled summary via the CLI. Flaky test detection in progress.

## Why

`pytest` tells you pass/fail. `suite-doctor` tells you:

- Slowest tests, sorted
- Failures with short message + full traceback available
- Flaky tests — re-runs failures N times, flags inconsistent ones
- Coverage summary — % covered, worst-covered files, untested functions
- Skipped/xfail counts
- Clean, colorized CLI output (via `rich`) instead of pytest's default verbose dump

## How it works

Shells out to `pytest --json-report` (via `pytest-json-report`), parses the JSON, formats a summary. No pytest internals, no plugin hooks — just wraps the CLI you already run.

## Requirements
# suite-doctor

A pytest-integrated health checkup tool. Runs your existing test suite via `pytest` and reports on its health — not another test framework, a wrapper around the one you already use.

## Status

Early development. Core subprocess runner in progress.

## Why

`pytest` tells you pass/fail. `suite-doctor` tells you:

- Coverage summary — % covered, worst-covered files, untested functions
- Flaky tests — re-runs failures N times, flags inconsistent ones
- Slowest tests
- Skipped/xfail counts
- Clean CLI table output instead of pytest's default verbose dump

## How it works

Shells out to `pytest --json-report` (via `pytest-json-report`), parses the JSON, formats a summary. No pytest internals, no plugin hooks — just wraps the CLI you already run.

## Requirements

- Python 3.x
- `pytest`
- `pytest-json-report`
- `pytest-cov`

## Install

```
pip install -e .
```

(placeholder — update once packaged)

## Usage

```
suite-doctor <path-to-project>
```

(placeholder — update once CLI exists)
- Python 3.9+
- `pytest`
- `pytest-json-report`
- `pytest-cov`
- `rich`

## Install

```
pip install -e .
```

## Usage

```
suite-doctor <path-to-project>
```

Example:

```
suite-doctor ./test-project
```

## Roadmap

- [x] Subprocess runner (`runner.py`) — run pytest, capture JSON
- [x] Parse results into summary/slowest/failures (`report.py`)
- [x] CLI output with `rich` (`cli.py`)
- [ ] Flaky test detection (re-run failures)
- [ ] Coverage summary formatting
- [ ] `--verbose` flag for full tracebacks
- [ ] `--top` flag for slowest-N count
