Skip to content

tests: add CoinVisualTests visual regression infrastructure - #59

Open
tritao wants to merge 1 commit into
stack/device-pixel-ratiofrom
stack/render-tests-infrastructure
Open

tests: add CoinVisualTests visual regression infrastructure#59
tritao wants to merge 1 commit 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 from 3836315 to 585d281 Compare August 16, 2026 23:35
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