ENH: Rewrite of testharness (minimal version) #362
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
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.