I am opening this PR to ease the integration of the new version of testharness. #326 is useful in some ways, but it is indeed a massive mess to review, and it will never get merged as-is.
I have ported the changes to tools/testharness.py from #326 here and made some additional minimal changes to allow for the CI to run. Actions run can be found here. It is looking great so far, but there are a few failures. I detail them below:
lock_exchange_3d fails because a warn test fails, and the new version of testharness reports this warning as a failure. It used to be silently ignored; have a look here for example.
top_hat fails because interval cannot be found on the command line. The reason here is that most tests in examples use a BINPREFIX variable to locate executable files. I am not sure if this variable is needed at all given that testharness populates the PATH environment variable with the right paths to Fluidity's executables. Looking at the CI report, the shell tried to locate /home/fluidity/../../bin/interval, or equivalently /bin/interval, which does not sound right.
Stokes_square_convection_1e4_p1p1_Ra_Test failed, but I have not investigated. I remember that, within the CMake branch, this test would also fail as PETSc solvers would not manage to converge. I had tried to play with the different solvers, but without success. Could it really be that the changes here (YAML workflow, Makefile.in, regressiontest.py and testharness.py) prevent these solvers from converging?
square-convection fails, but only on Focal and Impish, not on Bionic. Specifically, it fails in two Python tests: Picked up fields and Picked up fields correct after additional timestep. Looking at the output, the failure looks to be located in one of these three lines for Picked up fields, but I have not investigated further.
I am opening this PR to ease the integration of the new version of
testharness
. #326 is useful in some ways, but it is indeed a massive mess to review, and it will never get merged as-is.I have ported the changes to
tools/testharness.py
from #326 here and made some additional minimal changes to allow for the CI to run. Actions run can be found here. It is looking great so far, but there are a few failures. I detail them below:lock_exchange_3d
fails because a warn test fails, and the new version of testharness reports this warning as a failure. It used to be silently ignored; have a look here for example.top_hat
fails becauseinterval
cannot be found on the command line. The reason here is that most tests inexamples
use aBINPREFIX
variable to locate executable files. I am not sure if this variable is needed at all given thattestharness
populates thePATH
environment variable with the right paths to Fluidity's executables. Looking at the CI report, the shell tried to locate/home/fluidity/../../bin/interval
, or equivalently/bin/interval
, which does not sound right.Stokes_square_convection_1e4_p1p1_Ra_Test
failed, but I have not investigated. I remember that, within the CMake branch, this test would also fail as PETSc solvers would not manage to converge. I had tried to play with the different solvers, but without success. Could it really be that the changes here (YAML workflow,Makefile.in
,regressiontest.py
andtestharness.py
) prevent these solvers from converging?square-convection
fails, but only on Focal and Impish, not on Bionic. Specifically, it fails in two Python tests: Picked up fields and Picked up fields correct after additional timestep. Looking at the output, the failure looks to be located in one of these three lines forPicked up fields
, but I have not investigated further.