Commit 23aa22a1 authored by Steffen Müthing's avatar Steffen Müthing

Keep going as much as possible during tests

This patch changes duneci-standard-test to not abort on the first error anymore.
It will instead try to keep going as much as possible to catch as many errors as
possible.
parent 5cbbd5a3
......@@ -85,10 +85,26 @@ export OMPI_MCA_mpi_yield_when_idle=1
set -x
${DUNECONTROL} --current "${@}" vcsetup
${DUNECONTROL} --current "${@}" configure
${DUNECONTROL} --current "${@}" make ${parallel_opts} all
# Always try to do all test stages - dune-ctest will trigger on missing tests,
# and we manually catch installation errors
# We also have to pass "-k" to make to have it keep going as much as possible
# This won't work for ninja, which required "-k 0"
set +e
${DUNECONTROL} --current "${@}" make -k ${parallel_opts} all
if [[ "${DUNECI_TEST_INSTALL:-0}" != 0 ]] ; then
${DUNECONTROL} --current "${@}" make ${parallel_opts} install
${DUNECONTROL} --current "${@}" make -k ${parallel_opts} install
install_result=$?
fi
${DUNECONTROL} --current "${@}" make ${parallel_opts} "${build_test_targets[@]}"
${DUNECONTROL} --current "${@}" make -k ${parallel_opts} "${build_test_targets[@]}"
# note the extra quoting for select_test_args to protect it from dunecontrol evaling it
${DUNECONTROL} --current "${@}" bexec ${DUNE_CTEST} ${parallel_opts} ${select_test_args[@]:+"${select_test_args[@]@Q}"}
if ${DUNECONTROL} --current "${@}" bexec ${DUNE_CTEST} ${parallel_opts} ${select_test_args[@]:+"${select_test_args[@]@Q}"} ; then
if [[ -n ${install_result} && ${install_result} -ne 0 ]] ; then
echo "Error: The installation test failed"
exit 1
else
exit 0
fi
else
exit 1
fi
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment