diff --git a/docs/skills/pytest-scaffolding/SKILL.md b/docs/skills/pytest-scaffolding/SKILL.md index 90b36ea..1b90e06 100644 --- a/docs/skills/pytest-scaffolding/SKILL.md +++ b/docs/skills/pytest-scaffolding/SKILL.md @@ -51,7 +51,6 @@ Use this for all stacks first: Load next reference only if needed: - Baseline details and rationale: [pytest-docs.md](./references/pytest-docs.md) -- Condensed quick path variant: [pytest-docs copy.md](./references/pytest-docs copy.md) ### Level 2: FastAPI branch (only for HTTP/dependency/lifespan concerns) Escalate here when testing API routes, dependency injection boundaries, or app lifespan behavior. diff --git a/docs/skills/pytest-scaffolding/references/pytest-docs copy.md b/docs/skills/pytest-scaffolding/references/pytest-docs copy.md deleted file mode 100644 index 735e951..0000000 --- a/docs/skills/pytest-scaffolding/references/pytest-docs copy.md +++ /dev/null @@ -1,35 +0,0 @@ -# Pytest Documentation Notes - -Primary references used: -- https://docs.pytest.org/en/stable/explanation/goodpractices.html -- https://docs.pytest.org/en/stable/how-to/fixtures.html -- https://docs.pytest.org/en/stable/example/markers.html -- https://docs.pytest.org/en/stable/reference/customize.html -- https://docs.pytest.org/en/stable/explanation/flaky.html - -## Agent Quick Path -Use this file when you need fast pytest scaffolding defaults without framework-specific details. - -1. Mirror source layout under `tests/`. -2. Keep fixtures small and explicit; default to `function` scope. -3. Register markers up front in `pyproject.toml`. -4. Validate structure first with `uv run pytest --collect-only -q`. -5. Run fast lane with `uv run pytest -m unit -q`. - -Load other references only when needed: -- FastAPI routes/dependency injection/lifespan: `fastapi-testing.md` -- SQLAlchemy sessions/transactions/DB fixtures: `sqlalchemy-testing.md` - -## Practical Guidance For This Skill -- Use src-aligned test layout and keep test discovery conventional. -- Keep fixtures small, composable, and explicit; use `yield` for teardown. -- Register custom markers and keep strict marker validation on. -- Separate quick unit runs from slower integration/external runs. -- Minimize flakiness by controlling shared state and avoiding hidden dependencies. -- Use `--collect-only` and marker-filtered runs to validate scaffold quality early. - -## Commands Worth Remembering -- `uv run pytest --collect-only -q` -- `uv run pytest -m unit -q` -- `uv run pytest -m "not external" -q` -- `uv run pytest -q` diff --git a/docs/skills/pytest-scaffolding/references/pytest-docs.md b/docs/skills/pytest-scaffolding/references/pytest-docs.md index 269eb9e..21c54a7 100644 --- a/docs/skills/pytest-scaffolding/references/pytest-docs.md +++ b/docs/skills/pytest-scaffolding/references/pytest-docs.md @@ -7,6 +7,19 @@ - [Configuration reference](https://docs.pytest.org/en/stable/reference/customize.html) - [Flaky tests](https://docs.pytest.org/en/stable/explanation/flaky.html) +## Agent Quick Path +Use this file when you need fast pytest scaffolding defaults without framework-specific details. + +1. Mirror source layout under `tests/`. +2. Keep fixtures small and explicit; default to `function` scope. +3. Register markers up front in `pyproject.toml`. +4. Validate structure first with `uv run pytest --collect-only -q`. +5. Run fast lane with `uv run pytest -m unit -q`. + +Load other references only when needed: +- FastAPI routes/dependency injection/lifespan: `fastapi-testing.md` +- SQLAlchemy sessions/transactions/DB fixtures: `sqlalchemy-testing.md` + ## Practical Guidance For This Skill - Use src-aligned test layout and keep test discovery conventional. - Keep fixtures small, composable, and explicit; use `yield` for teardown.