diff options
author | Albert Cheng <acheng@hdfgroup.org> | 2010-06-08 18:22:11 (GMT) |
---|---|---|
committer | Albert Cheng <acheng@hdfgroup.org> | 2010-06-08 18:22:11 (GMT) |
commit | ed9a9f8c5077ab4ed9526ae97e2c5788ff7cf994 (patch) | |
tree | cdf98f224168356d4461c96813736fcb4dd41ff9 /tools/h5diff | |
parent | 21d186a8e7f89a065f47d6f515da4ef1495e29b7 (diff) | |
download | hdf5-ed9a9f8c5077ab4ed9526ae97e2c5788ff7cf994.zip hdf5-ed9a9f8c5077ab4ed9526ae97e2c5788ff7cf994.tar.gz hdf5-ed9a9f8c5077ab4ed9526ae97e2c5788ff7cf994.tar.bz2 |
[svn-r18985] Test feature: (bugs 1919)
Problem: some launching command like yod (and sometimes mpirun), do not pass
back the exit code of the executables back to the shell. It always returns 0
if it can launch the executable. This cause tests that expect non-zero exit
code to fail incorrectly.
Short term Solution:
Added the feature that if $RUNSERIAL_NOEXITCODE is defined, do not
test conditions that rely on non-zero exit code.
Tests:
dove-linux using RUNSERIAL=thgyod to see the failures and using
$RUNSERIAL_NOEXITCODE=yes to bypass the errors.
Also h5committested.
Diffstat (limited to 'tools/h5diff')
-rwxr-xr-x | tools/h5diff/testh5diff.sh | 12 |
1 files changed, 10 insertions, 2 deletions
diff --git a/tools/h5diff/testh5diff.sh b/tools/h5diff/testh5diff.sh index 5bbec8d..421bf73 100755 --- a/tools/h5diff/testh5diff.sh +++ b/tools/h5diff/testh5diff.sh @@ -67,6 +67,7 @@ DIFF='diff -c' nerrors=0 verbose=yes +h5haveexitcode=yes # default is yes pmode= # default to run h5diff tests mydomainname=`domainname 2>/dev/null` @@ -103,6 +104,13 @@ while [ $# -gt 0 ]; do esac done +# RUNSERIAL is used. Check if it can return exit code from executalbe correctly. +if [ -n "$RUNSERIAL_NOEXITCODE" ]; then + echo "***Warning*** Serial Exit Code is not passed back to shell corretly." + echo "***Warning*** Exit code checking is skipped." + h5haveexitcode=no +fi + # Print a line-line message left justified in a field of 70 characters # beginning with the word "Testing". # @@ -224,7 +232,7 @@ TOOLTEST() { # is from mpirun not tool) # if any problem occurs relate to an exit code, it will be caught in # serial mode, so the test is fullfilled. - if test -z "$pmode"; then + if test $h5haveexitcode = 'yes' -a -z "$pmode"; then echo "EXIT CODE: $EXIT_CODE" >> $actual fi @@ -234,7 +242,7 @@ TOOLTEST() { cp $actual $expect elif $CMP $expect $actual; then echo " PASSED" - elif test -z "$pmode"; then + elif test $h5haveexitcode = 'yes' -a -z "$pmode"; then echo "*FAILED*" echo " Expected result ($expect) differs from actual result ($actual)" nerrors="`expr $nerrors + 1`" |