Skip to content

Make test harnesses the same for release and PRs#2308

Merged
floryst merged 4 commits into
masterfrom
unify-testing
Mar 11, 2022
Merged

Make test harnesses the same for release and PRs#2308
floryst merged 4 commits into
masterfrom
unify-testing

Conversation

@floryst
Copy link
Copy Markdown
Contributor

@floryst floryst commented Mar 9, 2022

Context

  • Different test browsers were being used in release workflows vs PR workflows

Results

  • Tests now run on chrome and firefox via xvfb.

Changes

  • github workflows run the same test command
  • test results are uploaded as an artifact

PR and Code Checklist

Testing

This updates the test environment. Green github action results means this works.

@floryst floryst requested a review from jourdain March 9, 2022 23:26
@floryst floryst force-pushed the unify-testing branch 2 times, most recently from 520f251 to bb05b94 Compare March 9, 2022 23:47
@floryst floryst marked this pull request as draft March 11, 2022 18:51
@floryst floryst marked this pull request as draft March 11, 2022 18:51
@floryst floryst force-pushed the unify-testing branch 4 times, most recently from c47a930 to 0ecf988 Compare March 11, 2022 19:58
forrest added 2 commits March 11, 2022 15:00
- Both release and PR checks will now run tests.
- test result artifacts will now be published.
@floryst floryst marked this pull request as ready for review March 11, 2022 20:12
@floryst floryst merged commit 127d06e into master Mar 11, 2022
@floryst floryst deleted the unify-testing branch March 11, 2022 20:22
@github-actions
Copy link
Copy Markdown

🎉 This PR is included in version 23.0.0 🎉

The release is available on:

Your semantic-release bot 📦🚀

@github-actions github-actions Bot added the released Automated label label Mar 11, 2022
PaulHax added a commit to PaulHax/vtk-js that referenced this pull request May 22, 2026
Four tests were skipped over the years, each during a test-harness or
build migration rather than for a genuine feature failure. A skipped
test is green in CI, so none produced a signal and all silently
rotted. Re-enable them.

testLabelmapOutlineManyRenderer
  Skipped 2022-03-11 in commit 50ace42 (PR Kitware#2308, "Make test
  harnesses the same for release and PRs"); the commit gave no
  reason. While skipped the code rotted: createLabelPipeline called
  backgroundImageData.getDimensionsByReference(), which is not a
  function on vtkImageData. Use getDimensions(). Passes against the
  existing baseline, so no baseline change.

testEdgeVisibility
  Skipped 2021-11-12 in commit 13b9be1 (PR Kitware#2161, "Update test
  framework"), flagged in a pixelmatch-threshold-0 audit (PR Kitware#2098,
  closed unmerged) as a "bad image test" (issue Kitware#2104). The 2017
  baseline predates commit a8873e5 (2021-02-19,
  "feat(vtkopenglpolydatamapper): add support for backface
  property"), which changed the edge draw path from lit
  (ambient = getAmbient(), diffuse = getDiffuse()) to flat
  (ambient = 1.0, diffuse = 0.0): edges now render at the full
  configured edge color, the intended behavior. The render has been
  stable since at least 2021-06 (a steady 1.80% from the 2017
  baseline at 2021-06, 2022, and 2024). Refresh the baseline; the
  tolerance is unchanged at 1% (chromium ~0%, firefox passes).

testAverageIntensityProjection
  Skipped 2021-11-12 in commit 13b9be1 (PR Kitware#2161), tracked by
  issue Kitware#2102. It did not drift or regress. Before the 2021
  test-framework work the test was effectively a no-op: the old
  compareImages passed its threshold argument (here 1.5) straight to
  pixelmatch, whose threshold range is 0 to 1, so pixelmatch reported
  zero differing pixels for any image and the test passed vacuously.
  The pixelmatch-threshold-0 audit (PR Kitware#2098, closed unmerged)
  exposed the real comparison, and the test then "failed" because its
  baseline had never actually been checked.

  The committed baseline is the original 2019 image from aae2f55;
  commit 8a50448 only renamed it OpenGL/ to Core/ (100% rename).
  It is a near-blank volume the real render never matched. Rendering
  against old Sources shows a stable, correct head volume back to
  2021-06 (~1.5% from the corrected baseline, ~0% on current master).

  Replace the baseline with the actual render (chromium ~0%, firefox
  0.01%, within the 1% tolerance) and re-enable the test. Also
  release resources via .finally; gc.releaseResources had been passed
  as an unused 5th argument to compareImages.

testSetTable
  Skipped 2026-05-21 by the Vite/Vitest migration (c0d9887),
  which rewrote test.onlyIfWebGL(...) as it.skip(...) instead of the
  it.skipIf(__VTK_TEST_NO_WEBGL__)(...) form used for every other
  migrated WebGL test, silently disabling a passing test. Restore the
  intended WebGL-conditional skip.

Closes Kitware#2102
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

released Automated label

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant