generalise test script

This commit is contained in:
Emile Clark-Boman 2025-09-11 17:36:10 +10:00
parent 2db9e5d141
commit a04cc6a6e5

View file

@ -1,5 +1,5 @@
#!/usr/bin/env bash
USAGE='test [[run]-[valgrind]] ...'
USAGE='test program [[run]-[valgrind]] ...'
if [[ "$1" =~ help ]]; then
echo "$USAGE"
exit 0
@ -10,17 +10,27 @@ MODE=
REBUILD=true
VALGRIND=false
TARGET=all
if [[ "$1" =~ run.* ]]; then
MODE="$1"
PROGRAM="$1"
MODE_ARG="$2"
if [[ ! -x "$PROGRAM" ]]; then
echo "[!] Invalid program: \"$PROGRAM\""
echo "$USAGE"
exit 1
fi
if [[ "$MODE_ARG" =~ run.* ]]; then
MODE="$MODE_ARG"
REBUILD=false
fi
if [[ "$1" =~ .*valgrind ]]; then
MODE="$1"
if [[ "$MODE_ARG" =~ .*valgrind ]]; then
MODE="$MODE_ARG"
VALGRIND=true
PROXY='valgrind -s --leak-check=full --show-leak-kinds=all'
TARGET=debug
fi
if [[ -n "$MODE" ]]; then
shift
fi
@ -29,4 +39,4 @@ fi
if [[ "$REBUILD" == true ]]; then
make clean $TARGET
fi
LD_LIBRARY_PATH=./lib $PROXY ./cursed $@
LD_LIBRARY_PATH=./lib $PROXY "$PROGRAM" $@