Skip to content

test(e2e): live Playwright suite for the hydra-console virtual app (12/12 passing) - #36

Merged
rubenvdlinde merged 1 commit into
developmentfrom
spec/hydra-console-e2e
Jul 27, 2026
Merged

test(e2e): live Playwright suite for the hydra-console virtual app (12/12 passing)#36
rubenvdlinde merged 1 commit into
developmentfrom
spec/hydra-console-e2e

Conversation

@rubenvdlinde

Copy link
Copy Markdown
Contributor

What

12 live Playwright specs for the hydra-console virtual app, covering the dashboard (KPI cards + facet-backed charts), the three index pages, the ChangeDetail / CycleDetail / FindingDetail widget grids, the audit-trail widget, and manifest-declared widget titles.

Verified: 12/12 passed against a live instance.

Two design choices worth reviewing

  1. Every test asserts a page-identity marker before anything else. Navigating with a path-form goto and then asserting on whatever rendered is how a spec passes while silently testing the Dashboard — a failure mode this fleet has hit before.
  2. Assertions target seeded values (spdx-headers, decidesk, p2-agenda-management), never bare element existence. A selector matching an empty container is worse than no test.

Known defects asserted honestly, not worked around

Context

Part of the hydra-console chain: ConductionNL/hydra#384, ConductionNL/hermiq#52, ConductionNL/openregister#2160, ConductionNL/openconnector#1067. The app and its hydra-cache register are built live; this suite is what proves the read plane actually works rather than merely validating.

Note: the app under test is currently status: draft pending the command-path blockers above.

🤖 Generated with Claude Code

12 specs covering the hydra-console OpenBuild app over the hydra-cache register:
dashboard KPI cards and facet-backed charts, the three index pages, ChangeDetail /
CycleDetail / FindingDetail widget grids, the audit-trail widget, and manifest-declared
widget titles. All assertions target REAL seeded values (spdx-headers, decidesk,
p2-agenda-management) rather than element existence, and each test asserts a
page-identity marker first so a spec cannot silently pass while rendering the
Dashboard.

Two known defects are asserted honestly rather than worked around: the three command
buttons are verified to RENDER but are never clicked, because an OpenConnector endpoint
cannot authenticate a Nextcloud session (ConductionNL/openconnector#1068); and the
hermiq agent leaf widget is asserted to paint nothing, because nextcloud-vue beta.221
never calls mount() for a renderMode:'mount' leaf (hermiq#42/#44).

Verified: 12/12 passed against a live instance.
@rubenvdlinde
rubenvdlinde merged commit f7ea687 into development Jul 27, 2026
2 checks passed
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.

2 participants