Skip to content

Configure testing suite #3

@nathanjmcdougall

Description

@nathanjmcdougall

Motivation
Testing is a non-negotiable part of developing reliable software.

Summary of desired feature
A test suite and associated CI configuration set up for the project.

Design

  • The tests will be run using pytest.
  • The test suite will live in the tests directory.
  • uv will be used to install pytest and manage dependencies.

Describe alternatives you've considered

  • I haven't considered any other testing frameworks than pytest.
  • I have found it interesting when working on pins-python that the tests folder was inside the package folder. This supports a more modular approach suitable for monorepos, but I don't think it's necessary for this project and quite unconventional.
  • Managing dependencies could be done with rye. However, uv is already basically fit for purpose, even though its lockfiles etc. are quite experimental.

Testing Strategy
I would be able to see a successful CI pipeline which runs the testing suite.

Steps

  • Configure the project with uv.
  • Create a dummy test which just passes trivially.
  • Confirm that pytest runs the test successfully from the CLI
  • Set up GitHub actions CI pipeline to run pytest on multiple OSs.

Acceptance Criteria
The CI needs to be able to run at least one test.

Metadata

Metadata

Labels

enhancementNew feature or request

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions