https://github.com/exercism/pyret-test-runner
https://github.com/exercism/pyret-test-runner
exercism-test-runner exercism-tooling maintained-autonomous
Last synced: 26 days ago
JSON representation
- Host: GitHub
- URL: https://github.com/exercism/pyret-test-runner
- Owner: exercism
- License: agpl-3.0
- Created: 2023-07-18T12:39:12.000Z (almost 2 years ago)
- Default Branch: main
- Last Pushed: 2025-03-01T23:10:04.000Z (3 months ago)
- Last Synced: 2025-04-29T05:28:29.143Z (about 1 month ago)
- Topics: exercism-test-runner, exercism-tooling, maintained-autonomous
- Language: Shell
- Homepage:
- Size: 85 KB
- Stars: 4
- Watchers: 5
- Forks: 2
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
- License: LICENSE
- Code of conduct: CODE_OF_CONDUCT.md
- Codeowners: .github/CODEOWNERS
Awesome Lists containing this project
README
# Exercism Pyret Test Runner
The Docker image to automatically run tests on [Pyret] solutions submitted to [Exercism].
## Run the test runner
This test runner uses the [pyret-npm] NPM package which requires installing [NodeJS][nodejs]. The pyret-npm package works well on Linux and MacOS platforms, but Windows users should use [the Windows Subsystem for Linux][wsl] to run the test runner directly. To run the tests of an arbitrary exercise, do the following:
1. Open a terminal in the project's root
2. Run `./bin/run.sh `Once the test runner has finished, its results will be written to `/results.json`.
## Run the test runner on an exercise using Docker
_This script is provided for testing purposes, as it mimics how test runners run in Exercism's production environment._
To run the tests of an arbitrary exercise using the Docker image, do the following:
1. Open a terminal in the project's root
2. Run `./bin/run-in-docker.sh `Once the test runner has finished, its results will be written to `/results.json`.
## Run the tests
To run the tests to verify the behavior of the test runner, do the following:
1. Open a terminal in the project's root
2. Run `./bin/run-tests.sh`These are [golden tests][golden] that compare the `results.json` generated by running the current state of the code against the "known good" `tests//results.json`. All files created during the test run itself are discarded.
When you've made modifications to the code that will result in a new "golden" state, you'll need to generate and commit a new `tests//results.json` file.
## Run the tests using Docker
_This script is provided for testing purposes, as it mimics how test runners run in Exercism's production environment._
To run the tests to verify the behavior of the test runner using the Docker image, do the following:
1. Open a terminal in the project's root
2. Run `./bin/run-tests-in-docker.sh`These are [golden tests][golden] that compare the `results.json` generated by running the current state of the code against the "known good" `tests//results.json`. All files created during the test run itself are discarded.
When you've made modifications to the code that will result in a new "golden" state, you'll need to generate and commit a new `tests//results.json` file.
[pyret]: https://pyret.org/
[pyret-npm]: https://www.npmjs.com/package/pyret-npm
[nodejs]: https://nodejs.org/en
[wsl]: https://learn.microsoft.com/en-us/windows/wsl/about
[golden]: https://ro-che.info/articles/2017-12-04-golden-tests
[exercism]: https://exercism.io