tests/bin/check.sh, process MINGW and MSYS test results like Linux

This commit is contained in:
rlar 2017-09-13 18:55:07 +02:00
parent 91c60c28df
commit 3f9e79925e
1 changed files with 7 additions and 15 deletions

View File

@ -25,21 +25,13 @@ testdir=`dirname $TEST`
HOST_TYPE=`uname -srvm`
case $HOST_TYPE in
MINGW*|MSYS*)
$SPICE --batch $testdir/$testname.cir -o $testname.test &&\
sed -e 's/e-000/e+000/g' $testname.test | sed 's/e-0/e-/g' | sed 's/e+0/e+/g' | egrep -v "$FILTER" > $testname.test_tmp &&\
sed -e 's/-0$/ 0/g' $testdir/$testname.out | egrep -v "$FILTER" > $testname.out_tmp
if diff -B -w -u $testname.out_tmp $testname.test_tmp; then
rm $testname.test $testname.test_tmp $testname.out_tmp
exit 0
fi
rm -f $testname.test_tmp $testname.out_tmp
sed -e 's/e-000/e+000/g' $testname.test | sed 's/e-0/e-/g' | sed 's/e+0/e+/g' > $testname.test_tmp
mv $testname.test_tmp $testname.test
;;
Linux*|Darwin*|CYGWIN*)
$SPICE --batch $testdir/$testname.cir >$testname.test &&\
egrep -v "$FILTER" $testname.test > $testname.test_tmp &&\
Linux*|Darwin*|CYGWIN*|MINGW*|MSYS*)
$SPICE --batch $testdir/$testname.cir >$testname.test
# contrary to the c standard windows may print floating point values
# with three instead of two exponential digits
sed -e 's/\([.0-9][eE][+-]\?\)0\([0-9]\{2\}\)/\1\2/g' \
<$testname.test | \
egrep -v "$FILTER" > $testname.test_tmp
egrep -v "$FILTER" $testdir/$testname.out > $testname.out_tmp
if diff -B -w -u $testname.out_tmp $testname.test_tmp; then
rm $testname.test $testname.test_tmp $testname.out_tmp