Skip to content

Configure testing suite #3

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Closed
nathanjmcdougall opened this issue Aug 14, 2024 · 0 comments · Fixed by #5
Closed

Configure testing suite #3

nathanjmcdougall opened this issue Aug 14, 2024 · 0 comments · Fixed by #5
Assignees
Labels
enhancement New feature or request

Comments

@nathanjmcdougall
Copy link
Owner

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.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
1 participant