From c250afa7a0a9fe003196aded1a0749ed440481a3 Mon Sep 17 00:00:00 2001 From: Freya Murphy Date: Mon, 30 Sep 2024 18:50:22 -0400 Subject: update testing --- tools/test.sh | 41 +++++++++++++++++++++++++++++++++++++++++ 1 file changed, 41 insertions(+) create mode 100755 tools/test.sh (limited to 'tools') diff --git a/tools/test.sh b/tools/test.sh new file mode 100755 index 0000000..2dcbf6a --- /dev/null +++ b/tools/test.sh @@ -0,0 +1,41 @@ +#!/bin/sh + +# +# tests a binary +# against a output and an exit code +# + +dir="$(dirname "$0")" + +msim="$dir/../bin/msim/msim" +bin="$dir/../test/msim/$1" + +out=$(cat "$dir/../test/out/$1") +status=$(cat "$dir/../test/out/$1.status") + +temp=$(mktemp) + +$msim $bin &> $temp + +rstatus="$?" +rout=$(cat $temp) +rm $temp + +res=0 + +if [ "$out" != "$rout" ]; then + res=1 +fi + +if [ "$status" != "$rstatus" ]; then + res=1 +fi + +if [ $res = 0 ]; then + printf "\033[32mPASSED\033[0m\n" +else + printf "\033[31mFAILED\033[0m\n" + diff <(echo $out) <(echo $rout) +fi + +exit $res -- cgit v1.2.3-freya