, not plain s.
- assert 'h("details"' in js
- assert 'h("summary"' in js
- # The open prop is computed from json length (collapsed when verbose).
- assert "open: !collapsed" in js or "open:!collapsed" in js
- assert "json.length > 300" in js
-
-
-def test_run_metadata_skips_empty_object():
- """Empty `{}` metadata renders nothing — no useless labeled block.
-
- `r.metadata && {} && ...` would render a "Metadata" labeled block
- containing just `{}`, which is visual noise. The render predicate now
- also checks Object.keys(r.metadata).length > 0.
- """
- js = _dashboard_dist_path("index.js").read_text(encoding="utf-8")
- assert "Object.keys(r.metadata).length > 0" in js
-
-
-def test_run_metadata_disclosure_indicator_styled():
- """Native disclosure marker is hidden + replaced with a CSS-only chevron.
-
- Browsers render an OS-specific arrow next to by default. For a
- consistent look across OSes the hermes dashboard hides that marker and
- renders a CSS ::before chevron that rotates on [open]. Pin it so a
- future CSS rebuild can't silently lose it (which would put two markers
- side-by-side on Firefox/WebKit).
- """
- css = _dashboard_dist_path("style.css").read_text(encoding="utf-8")
- # Default markers suppressed.
- assert "list-style: none" in css
- assert "::-webkit-details-marker" in css
- # CSS-only chevron present + animates on open state.
- assert ".hermes-kanban-run-meta-block[open]" in css
- assert "rotate(90deg)" in css
+ assert "hermes-kanban-card--failed" in js
+ assert "hermes-kanban-card--failed" in css
+ assert "failedIds" in js