/scheme-test-runner

Primary LanguageSchemeGNU Affero General Public License v3.0AGPL-3.0

Scheme Test Runner

Test scheme exercisms in docker.

Plan

Pass the three parameters given to run.sh to exercise.ss. We don’t know if the student is using guile or chez, so try both. Read the output s-expressions from each and select the one with the fewest failures. Once that’s in hand, convert the keys in the association list to the format laid out in the exercism/automated-tests repository and finally output as JSON to a file results.json.

Notes

The script gets three parameters:

  • slug (eg. two-fer)
  • path to solution directory (including final slash)
  • path to output directory

The output is to be in json in the file results.json.

Output structure

Fields are “status”, “message”?, and “tests”. Each test has “name”, “status”, “message”?, “output” as fields.

Possible values for status include “pass”, “fail”, “error”. “error” is for unexpected exceptions.

todo

Most of the requirements should be implemented. One that isn’t is ensuring the output is < 500 chars.