Skip to content

feat: reqstool-regression-python — Python regression test wrapper #326

@jimisola

Description

@jimisola

Context

Depends on #324 (variant investigation) and #325 (SSOT requirements repo).

A thin Python wrapper repo that imports requirements from reqstool-regression via git location and adds Python-specific artifacts.

Proposed structure

A new repo reqstool/reqstool-regression-python containing:

  • Imports reqstool-regression via git location
  • 1–2 local requirements + SVCs to confirm local parsing works alongside imports
  • Python source with @Requirements / @SVCs annotations (using reqstool-python-decorators)
  • JUnit XML test results (surefire for unit tests, failsafe for integration tests)
  • MVRs for manual-test verification cases
  • annotations.yml mapping requirement/SVC IDs to Python FQNs

Key design decisions

  • Identical imported requirement IDs as the Java counterpart (reqstool-regression-java) — enables cross-language regression comparison
  • Uses hatch as build tool, python as language in reqstool_config.yml
  • Test results include all outcomes: pass, fail, skip, missing

Interim fixture

Until this repo exists, a fixture at tests/fixtures/reqstool-regression-python/ in reqstool-client serves as a stand-in with the same structure (and can later become a git submodule).

Acceptance criteria

  • New repo reqstool/reqstool-regression-python created
  • Imports from reqstool-regression work correctly
  • reqstool status and reqstool report produce valid output
  • All enum coverage verified (significance, lifecycle, categories, verification types)
  • CI runs reqstool status as a validation step

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions