Context
The prototype currently runs its tests via a single script, prototype/tests/test_basic.py, invoked directly with python tests/test_basic.py. As the test surface grows, a real test runner makes failures easier to read and selective runs possible.
What to do
- Convert the existing assertions in
prototype/tests/test_basic.py into pytest-style test functions (def test_*).
- Add
pytest to prototype/requirements.txt (dev section is fine).
- Ensure
pytest discovers and runs the suite from the prototype/ directory.
- Update the CI workflow and
CONTRIBUTING.md so the documented command matches (pytest instead of python tests/test_basic.py).
Acceptance criteria
Good to know
Keep the diff small and mechanical. If you spot a missing test case while migrating, open a separate issue/PR for it rather than mixing it in here.
Context
The prototype currently runs its tests via a single script,
prototype/tests/test_basic.py, invoked directly withpython tests/test_basic.py. As the test surface grows, a real test runner makes failures easier to read and selective runs possible.What to do
prototype/tests/test_basic.pyintopytest-style test functions (def test_*).pytesttoprototype/requirements.txt(dev section is fine).pytestdiscovers and runs the suite from theprototype/directory.CONTRIBUTING.mdso the documented command matches (pytestinstead ofpython tests/test_basic.py).Acceptance criteria
pytestruns green locally on Python 3.10/3.11/3.12.Good to know
Keep the diff small and mechanical. If you spot a missing test case while migrating, open a separate issue/PR for it rather than mixing it in here.