Files
prompts/docs/prompts/pytest-fill-scaffold/PROMPT.md
T
2026-06-24 08:55:04 -05:00

3.3 KiB

name, description, x-personal-mcp
name description x-personal-mcp
pytest-fill-scaffold Fill scaffolded pytest test methods with assertions, fixtures, and minimal test data while preserving concise test names and one-line intent docstrings.
id version tags capabilities arguments
pytest-fill-scaffold 1.0.0
pytest
testing
scaffolding
prompts
resource://prompts/pytest-fill-scaffold/document
target_files stack strategy marker_lane
description required
Target test file paths under tests/. true
description required
Runtime stack type for fixture and marker choices. true
description required
Balance between minimal and comprehensive implementation. false
description required
Preferred marker lane when applicable. false

Pytest Fill Scaffold

Use this prompt after test scaffolding exists and method names/docstrings are already in place.

Inputs

  • Target test file(s) under tests/.
  • Stack type:
    • pure-python
    • fastapi
    • sqlalchemy-sync
    • sqlalchemy-async
    • mixed
  • Optional constraints:
    • keep implementation minimal vs comprehensive
    • marker lane target (unit, integration, smoke)

Required References

Load these in order and use only what matches the task:

  1. Core defaults: pytest scaffolding skill
  2. Naming/hierarchy preservation: naming and organization
  3. Baseline pytest fixtures/markers: pytest docs notes
  4. FastAPI-specific behavior (only when needed): fastapi testing
  5. SQLAlchemy-specific behavior (only when needed): sqlalchemy testing

Workflow

  1. Inspect target files and treat human-reviewed docstring-only scaffolds as invariant.
  2. Convert each scaffolded method into an executable test with a single behavior focus.
  3. Keep one-line docstrings for class and method intent.
  4. Add or refine fixtures at the nearest useful scope:
    • global in tests/conftest.py only when broadly reusable
    • subtree conftest.py for domain-specific fixtures
  5. Assign markers consistent with cost and dependencies:
    • unit for pure logic
    • integration for framework/DB contracts
    • smoke for thin critical-path checks
  6. Validate in this order:
    • uv run pytest --collect-only -q
    • uv run pytest -m unit -q when unit tests are touched
    • uv run pytest -q if dependencies are available

Authoring Rules

  • Prefer deterministic tests and explicit setup/teardown.
  • Keep assertions precise and readable.
  • Do not overfit tests to private implementation details.
  • If a scaffolded class or method has only a docstring body, treat its name and hierarchy as locked.
  • Do not rename, move, merge, split, or re-nest docstring-only scaffolded tests unless explicitly requested.
  • Preserve existing one-line docstrings on scaffolded classes and methods unless they are factually incorrect.
  • If stack details are missing and would change fixture strategy, ask one concise clarifying question before editing.

Output Format

Return:

  1. Files updated.
  2. Fixture and marker decisions.
  3. Which references were used and why.
  4. Validation command results.
  5. Risks or open questions.