from pathlib import Path from tests.frontend_contract import read_feature ROOT = Path(__file__).resolve().parents[2] def test_result_state_css_contracts() -> None: css = (ROOT / "frontend" / "src" / "styles" / "app.css").read_text(encoding="utf-8") assert ".result-state" in css assert ".result-state-error" in css assert ".result-state-empty" in css assert ".result-state-loading" in css assert ".result-state-ready" in css assert ".result-state strong" in css assert ".result-state p" in css assert "overflow-wrap: anywhere;" in css def test_quality_and_export_panels_use_result_state_blocks() -> None: quality_panel = read_feature("quality") export_center = read_feature("exports") assert 'className="result-state result-state-error"' in quality_panel assert 'className="result-state result-state-empty"' in quality_panel assert 'className="result-state result-state-error"' in export_center assert 'className="result-state result-state-empty"' in export_center assert 'className="result-state result-state-loading"' in export_center def test_ai_labs_use_result_state_blocks() -> None: detection_lab = read_feature("detection") segmentation_lab = read_feature("segmentation") for content in (detection_lab, segmentation_lab): assert "result-state-loading" in content assert "result-state-error" in content assert "result-state-empty" in content assert "result-state-ready" in content