From b13c42841b271c5569baa0cfe4a70a543ee68a0a Mon Sep 17 00:00:00 2001 From: Ayrton Chilibeck Date: Fri, 12 Jan 2024 22:03:52 -0700 Subject: [PATCH] Added a README --- README.md | 70 +++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 70 insertions(+) create mode 100644 README.md diff --git a/README.md b/README.md new file mode 100644 index 0000000..680488e --- /dev/null +++ b/README.md @@ -0,0 +1,70 @@ +# Tester CMPUT 415 (rust version) + +This is a (mostly) drop-in replacement for the previous tester written for CMPUT 415. + +Most of the options are specified in the [config file](#configuration-file), so the cli is minimal. We do specify some options: +``` rust +Usage: tester [OPTIONS] --config-file + +Commands: + validate Validate test matching and config file correctness + run Run all tests + grade Grade with grading config + help Print this message or the help of the given subcommand(s) + +Options: + -v, --verbosity... Sets the verbosity of the tester + -c, --config-file Set the config file + -g, --grading-conf Set the grading config file + -h, --help Print help + -V, --version Print version + +``` + +the verbosity defines the level of logging, you can play around with it (specify `-v[v]+` for more verbose logging). + +## Configuration File + +The configuration file is specified in [YAML](https://yaml.org/spec/1.2.2/), so go check it out. Below is a fully featured config file, with more to come: + +``` yaml +input_path: "/path/to/dir" +output_path: "/path/to/out/dir" +in_stream_path: "/path/to/in/stream" + +tested_executables: + - name: "team1" + executable: "/path/to/exec" + - name: "team2" + executable: "/path/to/exec2" + +runtimes: + - name: "team1" + executable: "/path/to/exec" + - name: "team1" + executable: "/path/to/exec" + +toolchains: + - name: "toolchain1" + steps: + - name: "step1" + executable_path: "$EXE" + arguments: + - $INPUT + - $OUTPUT + output: "out.test" + - name: "step2" + executable_path: "/bin/bash" + arguments: + - echo "Hello World" + output: "-" + - name: "toolchain2" + steps: + - name: "step1" + executable_path: "/bin/bash" + arguments: + - echo "Hello toolchain 2!" + output: "-" +``` + +You can refer to the [original tester](https://github.com/cmput415/Tester) documentation to see some more options (#TODO will be pasting that here)