Skip to content

Add per-test fieldcompare tolerance and skip_compare (#837)#847

Open
PranjalManhgaye wants to merge 3 commits into
precice:developfrom
PranjalManhgaye:feature/837-fieldcompare-tolerance
Open

Add per-test fieldcompare tolerance and skip_compare (#837)#847
PranjalManhgaye wants to merge 3 commits into
precice:developfrom
PranjalManhgaye:feature/837-fieldcompare-tolerance

Conversation

@PranjalManhgaye

Copy link
Copy Markdown
Collaborator

summary

closes #837

i added optional tolerance and skip_compare fields in tests.yaml so we can override fieldcompare rtol per test (or skip compare entirely if we only care about build + run).

before this we had some tests stuck in expected-to-fail or commented out in component suites because exported vtk values are tiny and the default 3e-7 rtol basically always fails. now those cases use tolerance: 1e-2 instead.

what changed

  • parse tolerance and skip_compare in the system test yaml loader
  • pass rtol into the fieldcompare docker compose template (-rtol {{ tolerance }})
  • wire it through systemtests.py and generate_reference_results.py
  • remove the expected-to-fail suite
  • re-enable the affected tests in fenics-adapter, openfoam-adapter, micro-manager, and nutils-adapter
  • docs + changelog entry
    tests without tolerance still use the default 3e-7 so behavior for everything else should be the same.

local testing

i tried to run things locally on my machine , elastic-tube-3d (fluid-openfoam + solid-fenics) : full build / run / fieldcompare pass with -rtol 0.01 (32/32 comparisons) , this is the main case we cared about for this issue.

macro-nutils_micro-nutils : reference tarball doesn’t exist on develop yet so i couldn’t validate that one end-to-end
so yeah locally we’ve got solid proof for the fenics case ; the rest we’ll need ci .

notes for reviewers

would be great to trigger system tests on fenics-adapter, openfoam-adapter, micro-manager, dumux-adapter (and nutils-adapter once the nutils reference exists)
macro-nutils_micro-nutils is re-enabled in yaml but the reference file might still be missing upstream : heads up if ci complains there

happy to tweak tolerance values if 1e-2 is too loose or too tight for any of the three cases ,,

Allow overriding fieldcompare rtol via tests.yaml and optionally skip
the compare step. Re-enable previously quarantined tests with tolerance
1e-2 for near-zero exported fields.
Wrap long tolerance/skip_compare lines so check_style pre-commit passes.
@PranjalManhgaye PranjalManhgaye requested a review from MakisH June 17, 2026 09:21
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Overriding the fieldcompare tolerance (or skipping)

1 participant