first cut at very simple tester

This commit is contained in:
Remzi Arpaci-Dusseau
2019-02-15 04:56:27 -06:00
parent da78e916a1
commit d718e39375
45 changed files with 2000093 additions and 0 deletions

49
tester/run-tests.sh Executable file
View File

@@ -0,0 +1,49 @@
#! /usr/bin/env bash
# run_test test_number
run_test () {
testfile=tests/$1.run
# cat $testfile
$(cat $testfile) > tests-out/$1.out 2> tests-out/$1.err
return 0
}
# check_test test_number out/err
check_test () {
outdiff=$(diff tests/$1.$2 tests-out/$1.$2)
outerr=$?
if (( $outerr != 0 )); then
builtin echo -e "\e[31mtest $testnum: standard $2 incorrect\e[0m"
echo "should be:"
cat tests/$1.$2
echo "is:"
cat tests-out/$1.$2
exit 1
fi
return 0
}
(( testnum = 1 ))
while true; do
if [[ ! -f tests/$testnum.run ]]; then
exit 0
fi
run_test $testnum
check_test $testnum out
check_test $testnum err
builtin echo -e "\e[32mtest $testnum: passed\e[0m"
(( testnum = $testnum + 1 ))
done
exit 0