Skip to content

exercism/python-test-runner

Repository files navigation

Exercism Python Test Runner

The Docker image to automatically run tests on Python solutions submitted to exercism.

Running the Tests

To run all of the tests, do the following:

  1. Open a terminal in the project's root
  2. Run pytest

These are golden tests that compare the results.json generated by running the current state of the code against the "known good" test/<test-name>/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 test/<test-name>/results.json file.

Generating results.json for an Exercise

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 <exercise-slug> <path/to/solution/dir/ </path/to/output/dir/>

Generating results.json for an Exercise with Docker

This script is provided for testing purposes.

To run the tests of an arbitrary exercise using the Docker container, do the following:

  1. Open a terminal in the project's root
  2. Run ./bin/run-in-docker.sh <exercise-slug> <./relative/path/to/solution/dir/> <./relative/path/to/output/dir/>

Note: the solution and output directory's MUST be relative paths!