From af269e39fc59e7f09481978f42045c207efc3c31 Mon Sep 17 00:00:00 2001 From: Alexander Yastrebov Date: Wed, 10 Jan 2024 17:01:33 +0100 Subject: Update test*.sh to support input file pattern This is useful for testing fork(s) against subset of test samples --- test.sh | 27 ++++++++++++++++++++------- 1 file changed, 20 insertions(+), 7 deletions(-) (limited to 'test.sh') diff --git a/test.sh b/test.sh index 1eb25b1..c45ca75 100755 --- a/test.sh +++ b/test.sh @@ -17,22 +17,35 @@ set -euo pipefail -if [ -z "$1" ]; then - echo "Usage: test.sh " +DEFAULT_INPUT="src/test/resources/samples/*.txt" +FORK=${1:-""} +INPUT=${2:-$DEFAULT_INPUT} + +if [ "$#" -eq 0 ] || [ "$#" -gt 2 ] || [ "$FORK" = "-h" ]; then + echo "Usage: ./test.sh [input file pattern]" + echo + echo "For each test sample matching (default '$DEFAULT_INPUT')" + echo "runs implementation and diffs the result with the expected output." + echo "Note that optional should be quoted if contains wild cards." + echo + echo "Examples:" + echo "./test.sh baseline" + echo "./test.sh baseline src/test/resources/samples/measurements-1.txt" + echo "./test.sh baseline 'src/test/resources/samples/measurements-*.txt'" exit 1 fi -if [ -f "./prepare_$1.sh" ]; then - "./prepare_$1.sh" +if [ -f "./prepare_$FORK.sh" ]; then + "./prepare_$FORK.sh" fi -for sample in $(ls src/test/resources/samples/*.txt); do - echo "Validating calculate_average_$1.sh -- $sample" +for sample in $(ls $INPUT); do + echo "Validating calculate_average_$FORK.sh -- $sample" rm -f measurements.txt ln -s $sample measurements.txt - diff <("./calculate_average_$1.sh") ${sample%.txt}.out + diff <("./calculate_average_$FORK.sh") ${sample%.txt}.out done rm measurements.txt -- cgit v1.2.3