from __future__ import annotations from pathlib import Path from tests.frontend_contract import read_feature ROOT = Path(__file__).resolve().parents[2] def test_quality_results_panel_exposes_structured_surfaces() -> None: panel = read_feature("quality") assert "'quality-results-panel quality-results-panel-empty' : 'quality-results-panel'" in panel assert 'className="quality-results-shell"' in panel assert 'className="quality-summary-surface"' in panel assert 'aria-label="Samenvatting kwaliteitsresultaten"' in panel assert 'className="quality-evidence-surface"' in panel assert 'aria-label="Databronnen van de kwaliteitscontrole"' in panel assert 'className="quality-control-surface"' in panel assert 'aria-label="Kwaliteitsresultaten vernieuwen en filteren"' in panel assert 'className="quality-result-state-stack"' in panel assert 'className="quality-history-surface"' in panel assert 'aria-label="Geschiedenis van kwaliteitsresultaten"' in panel assert 'className="quality-advanced-disclosure"' in panel def test_quality_results_panel_preserves_existing_refresh_filter_and_history_state() -> None: panel = read_feature("quality") assert "onRefresh" in panel assert "qualityStatusFilter" in panel assert "qualityTypeFilter" in panel assert "qualitySearchQuery" in panel assert "visibleQualityChecks.map" in panel assert "Alle kwaliteitsresultaten tonen" in panel assert "Geen kwaliteitsresultaten voldoen aan de filters." in panel def test_quality_workspace_density_css_contracts() -> None: css = (ROOT / "frontend" / "src" / "styles" / "app.css").read_text(encoding="utf-8") assert ".quality-results-shell" in css assert ".quality-summary-surface" in css assert ".quality-evidence-surface" in css assert ".quality-control-surface" in css assert ".quality-history-surface" in css assert ".quality-result-state-stack" in css assert ".quality-results-shell .quality-summary-grid" in css assert ".quality-results-shell .quality-handoff-grid" in css assert ".quality-results-shell .quality-history-controls" in css assert "grid-template-columns: repeat(auto-fit, minmax(8.25rem, 1fr));" in css assert "grid-template-columns: repeat(auto-fit, minmax(7.5rem, 1fr));" in css assert "background: linear-gradient(180deg, var(--gi-surface), var(--gi-brand-50));" in css