#!/bin/sh # # Run the automated tests for the project. set -eu hideok=chronic if [ "$#" -gt 0 ] then case "$1" in verbose | -v | --verbose) hideok= shift ;; esac fi got_cargo_cmd() { cargo "$1" --help > /dev/null } got_cargo_cmd clippy && cargo clippy -q $hideok cargo build --all-targets got_cargo_cmd fmt && $hideok cargo fmt -- --check $hideok cargo test subplot docgen bumper.md -o bumper.html subplot docgen bumper.md -o bumper.pdf subplot codegen bumper.md -o test.py rm -f test.log if $hideok python3 test.py --log test.log "$@" then echo "test program OK" else echo "test program FAILED, log file follows" echo ================================================================== cat test.log echo ================================================================== exit 42 fi echo "Everything seems to be in order."