Skip to content

Implemented issue #164 - testing harness for orc-gui#166

Merged
simoninns merged 1 commit intomainfrom
guitest-20260324
Mar 25, 2026
Merged

Implemented issue #164 - testing harness for orc-gui#166
simoninns merged 1 commit intomainfrom
guitest-20260324

Conversation

@simoninns
Copy link
Copy Markdown
Owner

Summary

This PR delivers a full GUI unit-testing foundation and follow-on stability fixes, while also reorganizing test infrastructure and updating CI/docs to support that workflow.

What this branch contains:

  • Adds a unified test tree under orc-tests and migrates core unit tests into a source-aligned layout.
  • Introduces GUI unit tests (logic/model/widget tiers) with presenter-boundary mocks and offscreen dialog coverage.
  • Extracts a testable GUI library target from the app so GUI implementation can be linked into tests without coupling to main entrypoint.
  • Adds presenter seams/types used by GUI tests (including an interface boundary for project presenter interactions).
  • Strengthens render/live-preview coordination and live-tweak behavior (including stale-response and request-order robustness paths covered by tests).
  • Expands contract coverage (including project-to-DAG behavior) and adjusts related core/presenter paths needed by the new tests.
  • Updates CI to run GUI tests in headless mode and ensures packaging workflows explicitly disable unit/GUI test builds.
  • Updates BUILD and TESTING docs for the new test structure and validation gates, and removes superseded duplicated stage-test expectations content.
  • Updates Copilot guidance to reflect the new GUI testing expectations.

Overall diff size: 105 files changed, 4018 insertions, 479 deletions.

Type of change

  • Bug fix
  • New feature
  • Refactor
  • Documentation
  • Other

Validation

Validated on this branch with:

  • cmake --build build -j
  • ctest --test-dir build --output-on-failure
  • Result: 100% tests passed, 0 failed, out of 618 total
  • Label summary from ctest run:
    • unit: 523 tests
    • gui: 94 tests
    • mvp: 1 test
    • cli: 3 tests
  • GUI test runs use offscreen backend in CI where applicable.

Checklist

  • Scope is focused and minimal
  • Build passes locally
  • Related docs were updated if needed
  • Linked issue (if applicable)

Related issue

Closes #164

@simoninns simoninns merged commit 994d628 into main Mar 25, 2026
14 checks passed
@simoninns simoninns deleted the guitest-20260324 branch March 25, 2026 10:29
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.

[Feature] Implement a testing strategy for orc-gui

1 participant