Metadata-Version: 2.4
Name: tesserakit-tests
Version: 0.4.0
Summary: Tests job pack for Tessera: audit a Python test suite for hygiene (no-assert, skipped, xfail).
Project-URL: Homepage, https://github.com/ShaileshRawat1403/tessera
Project-URL: Repository, https://github.com/ShaileshRawat1403/tessera
Project-URL: Issues, https://github.com/ShaileshRawat1403/tessera/issues
Author: Shailesh Rawat
Classifier: Development Status :: 3 - Alpha
Classifier: Environment :: Console
Classifier: Intended Audience :: Developers
Classifier: Programming Language :: Python :: 3
Requires-Python: >=3.10
Requires-Dist: pydantic>=2.7
Requires-Dist: rich>=13.7
Requires-Dist: tesserakit-core>=0.1.0
Requires-Dist: typer>=0.12
Provides-Extra: dev
Requires-Dist: pytest>=8.0; extra == 'dev'
Description-Content-Type: text/markdown

# tesserakit-tests

Audit a Python test suite for hygiene problems.

`tessera-tests` parses test files with `ast` (never imports or runs them), inventories the test functions and methods, and surfaces the tests that aren't really protecting anything: tests with no assertions, and tests that are skipped or expected to fail.

## Audit

```bash
tessera tests audit --input . --output ./out/tests_pack
```

Test discovery follows pytest/unittest conventions: files named `test_*.py` / `*_test.py` or under a `tests/` directory; functions named `test*`; methods named `test*` inside `Test*` classes.

Artifacts written:

```text
tests.jsonl              one TestCase per test (asserts, skip/xfail/param flags)
index.md                 the test inventory
validation_report.md     hygiene findings
coverage_report.md       counts (skipped/xfail/parametrized/no-assert) + per-file
not_running.md           skipped + xfail tests (present but not protecting anything)
```

## What it detects

- **Assertions**: `assert` statements, `self.assert*` calls, and `pytest.raises`/`warns` blocks.
- **Markers**: `@pytest.mark.skip` / `skipif`, `xfail`, `parametrize` (matched on the decorator name).

## Findings

- `no_assertion_test` (warning) — a test with zero assertions that isn't skipped/xfail
- `skipped_test` (info) — a skipped test
- `xfail_test` (info) — an expected-failure test
- `parse_error`, `no_tests_found`
