from pathlib import Path ROOT = Path(__file__).resolve().parents[2] def test_inspector_mobile_density_css_contracts() -> None: css = (ROOT / "frontend" / "src" / "styles" / "app.css").read_text(encoding="utf-8") assert ".inspector-card .button-row" in css assert ".inspector-card .button-row button" in css assert ".inspector-field strong" in css assert ".dataset-detail-panel p" in css assert ".dataset-detail-panel li" in css assert ".dataset-detail-panel .job-result" in css assert ".dataset-tool-panel" in css assert ".dataset-tool-group" in css assert ".dataset-tool-group label" in css assert ".dataset-tool-group input," in css assert ".dataset-tool-group select" in css assert ".dataset-tool-group button" in css assert "overflow-wrap: anywhere;" in css assert "max-height: 18rem;" in css def test_inspector_components_keep_mobile_tool_markup() -> None: inspector = (ROOT / "frontend" / "src" / "components" / "inspector" / "WorkbenchInspector.tsx").read_text( encoding="utf-8" ) dataset_detail = (ROOT / "frontend" / "src" / "components" / "datasets" / "DatasetDetailPanel.tsx").read_text( encoding="utf-8" ) raster_controls = (ROOT / "frontend" / "src" / "components" / "datasets" / "RasterControls.tsx").read_text( encoding="utf-8" ) vector_controls = (ROOT / "frontend" / "src" / "components" / "datasets" / "VectorControls.tsx").read_text( encoding="utf-8" ) assert 'className="workbench-inspector-panel"' in inspector assert 'className="inspector-action-bar"' in inspector assert 'className="dataset-detail-panel"' in dataset_detail assert 'className="dataset-tool-panel raster-tool-panel"' in raster_controls assert 'className="dataset-tool-group"' in raster_controls assert 'className="dataset-tool-panel vector-tool-panel"' in vector_controls assert 'className="dataset-tool-group"' in vector_controls