mirror of
https://github.com/Stichting-MINIX-Research-Foundation/netbsd.git
synced 2025-09-10 15:46:33 -04:00
97 lines
1.9 KiB
Bash
Executable File
97 lines
1.9 KiB
Bash
Executable File
#! /bin/sh
|
|
|
|
set -e
|
|
|
|
agrep="$top_builddir/src/agrep"
|
|
|
|
echo "$builddir $top_builddir $srcdir"
|
|
|
|
num_cases=0
|
|
num_expanded=0
|
|
num_tests=0
|
|
num_fail=0
|
|
num_ok=0
|
|
|
|
SIFS="$IFS"
|
|
|
|
for args in $srcdir/*.args; do
|
|
dir=`dirname $args`
|
|
base=`basename $args .args`
|
|
orig_input=$dir/$base.input
|
|
input=$base.in
|
|
ok=$dir/$base.ok
|
|
out=$base.out
|
|
|
|
rm -f $out
|
|
IFS="
|
|
"
|
|
for arg in `cat $args`; do
|
|
IFS="$SIFS"
|
|
case "$arg" in
|
|
\#*) continue;;
|
|
esac
|
|
|
|
num_cases=`expr $num_cases + 1`
|
|
cp "$orig_input" $input
|
|
|
|
for extra in "" -c -H -l -n -s -M --show-position --color \
|
|
"-H -n -s --color --show-position"; do
|
|
num_expanded=`expr $num_expanded + 1`
|
|
# Note that `echo' cannot be used since it works differently on
|
|
# different platforms with regards to expanding \n (IRIX expands
|
|
# it, others typically do not). `cat' doesn't process its output.
|
|
cat >> $out <<EOF
|
|
#### TEST: agrep $extra $arg $input
|
|
EOF
|
|
cat <<EOF
|
|
agrep $extra $arg $input
|
|
EOF
|
|
set +e
|
|
$agrep $extra $arg $input >> $out
|
|
status=$?
|
|
set -e
|
|
cat >> $out <<EOF
|
|
|
|
Exit status $status.
|
|
EOF
|
|
|
|
num_expanded=`expr $num_expanded + 1`
|
|
cat >> $out <<EOF
|
|
#### TEST: agrep $extra $arg < $input
|
|
EOF
|
|
cat <<EOF
|
|
agrep $extra $arg < $input
|
|
EOF
|
|
set +e
|
|
$agrep $extra $arg < $input >> $out
|
|
status=$?
|
|
set -e
|
|
cat >> $out <<EOF
|
|
|
|
Exit status $status.
|
|
EOF
|
|
done
|
|
done
|
|
num_tests=`expr $num_tests + 1`
|
|
case $host_triplet in
|
|
*-mingw*)
|
|
# On MinGW something causes \r\n newlines to be output to $out,
|
|
# and our reference results don't have them.
|
|
tr -d '\015' < $out > $out.tmp
|
|
mv $out.tmp $out
|
|
;;
|
|
esac
|
|
if diff $ok $out; then
|
|
num_ok=`expr $num_ok + 1`
|
|
else
|
|
echo "FAILED (see above)"
|
|
num_fail=`expr $num_fail + 1`
|
|
fi
|
|
done
|
|
|
|
echo "Ran $num_cases tests ($num_expanded expanded) from $num_tests suites."
|
|
echo "$num_ok/$num_tests tests OK"
|
|
|
|
test $num_fail -eq 0
|
|
exit $?
|