2ca83614e7
Some of the test scripts create temporary files, which we remove at the end. Except that we usually forgot to remove them on some exit paths. To avoid this problem in future, this modifies the scripts to use the shell's trap 0 functionality to automatically remove the temporaries on any exit. Signed-off-by: David Gibson <david@gibson.dropbear.id.au>
31 lines
483 B
Bash
Executable file
31 lines
483 B
Bash
Executable file
#! /bin/sh
|
|
|
|
. ./tests.sh
|
|
|
|
for x; do
|
|
shift
|
|
if [ "$x" = "--" ]; then
|
|
break;
|
|
fi
|
|
CHECKS="$CHECKS $x"
|
|
done
|
|
|
|
LOG=tmp.log.$$
|
|
rm -f $LOG
|
|
trap "rm -f $LOG" 0
|
|
|
|
verbose_run_log "$LOG" $VALGRIND "$DTC" -o /dev/null "$@"
|
|
ret="$?"
|
|
|
|
if [ "$ret" -gt 127 ]; then
|
|
signame=$(kill -l $[ret - 128])
|
|
FAIL "Killed by SIG$signame"
|
|
fi
|
|
|
|
for c in $CHECKS; do
|
|
if ! grep -E "^(ERROR)|(Warning) \($c\):" $LOG > /dev/null; then
|
|
FAIL "Failed to trigger check \"$c\""
|
|
fi
|
|
done
|
|
|
|
PASS
|