Skip to content

tests: add CoinVisualTests visual regression infrastructure - #59

Open
tritao wants to merge 2 commits into
stack/device-pixel-ratiofrom
stack/render-tests-infrastructure
Open

tests: add CoinVisualTests visual regression infrastructure#59
tritao wants to merge 2 commits into
stack/device-pixel-ratiofrom
stack/render-tests-infrastructure

Conversation

@tritao

@tritao tritao commented Aug 16, 2026

Copy link
Copy Markdown
Collaborator

Summary

Adds a deliberately small CoinVisualTests visual-regression foundation for
Coin's LegacyGL renderer.

The runner creates a hidden desktop OpenGL compatibility context, renders
.iv scenes through SoGLRenderAction, captures PNG output, and compares it
with checked-in baselines.

Scope

  • LegacyGL / SoGLRenderAction reference rendering only.
  • A private RenderDriver seam with a LegacyGLDriver implementation.
  • Thin YAML manifests for scene path, framebuffer size/background, optional
    camera override, baseline, and comparison policy.
  • Snapshot, compare, run, and baseline-update commands.
  • Filesystem-based spec discovery with CMake-generated source/build defaults.
  • Single-root render artifacts under render_artifacts/gl.
  • Four initial visual fixtures: basic cube, perspective camera, orthographic
    camera, and viewport/background handling.

Additional renderer integrations and native backend contracts remain owned by
their subsequent stack layers.

Validation contract

Baseline updates succeed only when both rendering and baseline copying
succeed. Image comparison uses centralized default, strict, exact, and
relaxed policies; masks and renderer-state toggles are intentionally not
part of this foundation.

CI runs the suite in the Ubuntu LegacyGL-enabled job and uploads actual
images, diffs, metrics, and CTest results.

Stack position

Layer 10/18, based on PR #43. The
retained IR and renderer layers build on this infrastructure in the subsequent
stack layers.

@tritao
tritao force-pushed the stack/render-tests-infrastructure branch 6 times, most recently from dbf585a to fe82564 Compare August 16, 2026 20:52
@tritao
tritao marked this pull request as ready for review August 16, 2026 22:20
@tritao
tritao force-pushed the stack/render-tests-infrastructure branch 2 times, most recently from 42957f6 to 3836315 Compare August 16, 2026 23:23
@tritao tritao changed the title tests: add CoinRenderTests visual regression infrastructure tests: add CoinVisualTests visual regression infrastructure Aug 16, 2026
@tritao
tritao force-pushed the stack/render-tests-infrastructure branch 3 times, most recently from e5ba58e to bde7d1f Compare August 17, 2026 14:12
@tritao
tritao force-pushed the stack/render-tests-infrastructure branch from bde7d1f to e25ae18 Compare August 17, 2026 15:52
@tritao
tritao force-pushed the stack/render-tests-infrastructure branch from e25ae18 to 84ce186 Compare August 18, 2026 00:18
@tritao
tritao force-pushed the stack/render-tests-infrastructure branch from 84ce186 to 11877e3 Compare August 18, 2026 09:24
@tritao
tritao force-pushed the stack/render-tests-infrastructure branch from 11877e3 to 0ea9c1c Compare August 18, 2026 14:40
@tritao
tritao force-pushed the stack/render-tests-infrastructure branch 3 times, most recently from 5752b52 to 4268a9c Compare August 18, 2026 18:12
@tritao
tritao force-pushed the stack/render-tests-infrastructure branch from 4268a9c to f3035da Compare August 18, 2026 19:52
@tritao
tritao force-pushed the stack/render-tests-infrastructure branch from f3035da to 10f8f3b Compare August 18, 2026 22:54
@tritao
tritao force-pushed the stack/render-tests-infrastructure branch from 10f8f3b to 2c9da1e Compare August 18, 2026 23:20
@tritao
tritao force-pushed the stack/render-tests-infrastructure branch from 2c9da1e to 3dd973d Compare August 19, 2026 01:16
@tritao
tritao force-pushed the stack/render-tests-infrastructure branch from 3dd973d to 9b0c5d5 Compare August 19, 2026 01:34
@tritao
tritao force-pushed the stack/render-tests-infrastructure branch from 9b0c5d5 to 2e2eeed Compare August 19, 2026 02:14
@tritao
tritao force-pushed the stack/render-tests-infrastructure branch 2 times, most recently from 2b08318 to 9dd900c Compare August 19, 2026 10:22
@tritao
tritao force-pushed the stack/render-tests-infrastructure branch from 20e4d07 to b348bd0 Compare August 19, 2026 10:28
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.

1 participant