mirror of
git://git.code.sf.net/p/cdesktopenv/code
synced 2025-03-09 15:50:02 +00:00
shtests: report signal when a test crashes
When a test aborted due to a signal, the >256 exit code signifying the signal was incorrectly reported as the number of errors. src/cmd/ksh93/tests/shtests: - For $? > 256, obtain and report the signal name using 'kill -l'. (cherry picked from commit a7d8ae628e228fc3cadcf977fbffc87b90c7bc53)
This commit is contained in:
parent
21f281a5fa
commit
794d1c8601
1 changed files with 16 additions and 14 deletions
|
@ -339,19 +339,21 @@ do [[ $i == *.sh ]] || i+='.sh'
|
|||
lang=LANG=$lang
|
||||
fi
|
||||
echo test $o begins ${time:+"at $(date +%Y-%m-%d+%H:%M:%S)"}
|
||||
E=error
|
||||
eval $lang \$valgrind \$SHELL \$trace \$i
|
||||
e=$?
|
||||
if [[ $valgrind ]]
|
||||
then valxml $valxml
|
||||
(( e += $? ))
|
||||
fi
|
||||
if (( e > 256 ))
|
||||
then E="(killed by SIG$(kill -l "$e"))"
|
||||
elif (( e == 1 ))
|
||||
then E="1 error"
|
||||
else E="$e errors"
|
||||
fi
|
||||
if (( e == 0 ))
|
||||
then echo test $o passed ${time:+"at $(date +%Y-%m-%d+%H:%M:%S)"} "[ $t $T 0 ${E}s ]"
|
||||
else if (( e != 1 ))
|
||||
then E=${E}s
|
||||
fi
|
||||
echo test $o failed ${time:+"at $(date +%Y-%m-%d+%H:%M:%S)"} with exit code $e "[ $t $T $e $E ]"
|
||||
then echo test $o passed ${time:+"at $(date +%Y-%m-%d+%H:%M:%S)"} "[ $t $T $E ]"
|
||||
else echo test $o failed ${time:+"at $(date +%Y-%m-%d+%H:%M:%S)"} with exit code $e "[ $t $T $E ]"
|
||||
fi
|
||||
done
|
||||
fi
|
||||
|
@ -359,20 +361,20 @@ do [[ $i == *.sh ]] || i+='.sh'
|
|||
then c=$tmp/shcomp-$u.ksh
|
||||
o="$u(shcomp)"
|
||||
echo test $o begins ${time:+"at $(date +%Y-%m-%d+%H:%M:%S)"}
|
||||
E=error
|
||||
if $SHCOMP $i > $c
|
||||
then if $valgrind $SHELL $trace $c
|
||||
then echo test $o passed ${time:+"at $(date +%Y-%m-%d+%H:%M:%S)"} "[ $t $T 0 ${E}s ]"
|
||||
then echo test $o passed ${time:+"at $(date +%Y-%m-%d+%H:%M:%S)"} "[ $t $T 0 errors ]"
|
||||
else e=$?
|
||||
if (( e != 1 ))
|
||||
then E=${E}s
|
||||
if (( e > 256 ))
|
||||
then E="(killed by SIG$(kill -l "$e"))"
|
||||
elif (( e == 1 ))
|
||||
then E="1 error"
|
||||
else E="$e errors"
|
||||
fi
|
||||
echo test $o failed ${time:+"at $(date +%Y-%m-%d+%H:%M:%S)"} with exit code $e "[ $t $T $e $E ]"
|
||||
echo test $o failed ${time:+"at $(date +%Y-%m-%d+%H:%M:%S)"} with exit code $e "[ $t $T $E ]"
|
||||
fi
|
||||
else e=$?
|
||||
t=1
|
||||
T=test
|
||||
echo test $o failed to compile ${time:+"at $(date +%Y-%m-%d+%H:%M:%S)"} with exit code $e "[ $t $T 1 $E ]"
|
||||
echo test $o failed to compile ${time:+"at $(date +%Y-%m-%d+%H:%M:%S)"} with exit code $e "[ 1 test 1 error ]"
|
||||
fi
|
||||
if [[ $i == $timesensitive ]]
|
||||
then VMALLOC_OPTIONS=$vmalloc_options
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue