aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDavid Phillips <david@sighup.nz>2017-09-12 21:47:29 +1200
committerDavid Phillips <david@sighup.nz>2017-09-12 21:47:29 +1200
commitd34c4fb99a770add02347b29e7c0bb9a46ec7dc1 (patch)
tree28a6922eb9be9d9bed653cfacf27a2a612676234
parent28d1059e94554cc6c36a26d47aa736faff9c4693 (diff)
downloadsand-leek-d34c4fb99a770add02347b29e7c0bb9a46ec7dc1.tar.xz
Clean up test runner script
-rwxr-xr-xtest/run-tests.sh22
1 files changed, 10 insertions, 12 deletions
diff --git a/test/run-tests.sh b/test/run-tests.sh
index f24ac73..b7f7856 100755
--- a/test/run-tests.sh
+++ b/test/run-tests.sh
@@ -3,39 +3,37 @@
fail()
{
- echo -e '[\e[1;31mFAIL\e[0m] '$i: $@
+ echo -e '[\e[1;31mFAIL\e[0m] '"$i:" "$@"
exit 1
}
pass()
{
- echo -e '[\e[0;32mPASS\e[0m] '$i
+ echo -e '[\e[0;32mPASS\e[0m] '"$i"
}
check_expected()
{
- [ -z $1 ] && echo WARN: check_expected called with no argument
- if [ -f $1.expected ] ; then
- diff $1.expected $1.tmp >/dev/null
- if [ $? -ne 0 ] ; then
+ [ -z "$1" ] && echo WARN: check_expected called with no argument
+ if [ -f "$1.expected" ] ; then
+ if ! diff "$1.expected" "$1.tmp" >/dev/null; then
fail "$1 didn't match expected"
fi
fi
}
-pushd $(dirname $0) >/dev/null
-EXECUTABLE="../../sand-leek"
+pushd "$(dirname "$0")" >/dev/null
+export EXECUTABLE="../../sand-leek"
for i in *.test ; do
- pushd ${i} >/dev/null
- ( . ./run.sh ) 2>stderr.tmp >stdout.tmp
- if [ $? -ne 0 ] ; then
+ pushd "${i}" >/dev/null
+ if ! ( . ./run.sh ) 2>stderr.tmp >stdout.tmp; then
fail "script had non-zero return code"
fi
check_expected stdout
check_expected stderr
- pass $i
+ pass "$i"
rm std{err,out}.tmp
popd >/dev/null