platform_external_dtc/tests/dtc-checkfails.sh

46 lines
734 B
Bash
Raw Normal View History

#! /bin/sh
SRCDIR=`dirname "$0"`
. "$SRCDIR/testutils.sh"
for x; do
shift
if [ "$x" = "-n" ]; then
for x; do
shift
if [ "$x" = "--" ]; then
break;
fi
NOCHECKS="$NOCHECKS $x"
done
break;
fi
if [ "$x" = "--" ]; then
break;
fi
YESCHECKS="$YESCHECKS $x"
done
LOG=tmp.log.$$
rm -f $LOG
trap "rm -f $LOG" 0
verbose_run_log "$LOG" $VALGRIND "$DTC" -o /dev/null "$@"
ret="$?"
FAIL_IF_SIGNAL $ret
for c in $YESCHECKS; do
if ! grep -E "(ERROR|Warning) \($c\):" $LOG > /dev/null; then
FAIL "Failed to trigger check \"$c\""
fi
done
for c in $NOCHECKS; do
if grep -E "(ERROR|Warning) \($c\):" $LOG > /dev/null; then
FAIL "Incorrectly triggered check \"$c\""
fi
done
PASS