from pathlib import Path ROOT = Path(__file__).resolve().parents[2] def test_dataset_operation_form_css_contracts() -> None: css = (ROOT / "frontend" / "src" / "styles" / "app.css").read_text(encoding="utf-8") assert ".dataset-tool-heading" in css assert ".dataset-tool-helper" in css assert ".dataset-tool-field" in css assert ".dataset-tool-label" in css assert ".dataset-tool-error" in css assert ".dataset-tool-action-row" in css assert ".dataset-tool-grid" in css assert "grid-template-columns: repeat(auto-fit, minmax(9rem, 1fr));" in css assert "overflow-wrap: anywhere;" in css def test_raster_controls_expose_readable_operation_groups() -> None: raster_controls = (ROOT / "frontend" / "src" / "components" / "datasets" / "RasterControls.tsx").read_text( encoding="utf-8" ) assert 'className="dataset-tool-heading"' in raster_controls assert 'className="dataset-tool-helper"' in raster_controls assert 'className="dataset-tool-grid"' in raster_controls assert 'className="dataset-tool-field"' in raster_controls assert 'className="dataset-tool-label"' in raster_controls assert 'className="dataset-tool-action-row"' in raster_controls assert 'className="dataset-tool-error"' in raster_controls assert "Coördinatenstelsel van het afgeleide raster." in raster_controls assert "De tegelgrootte moet groter zijn dan nul." in raster_controls def test_vector_controls_expose_readable_operation_groups() -> None: vector_controls = (ROOT / "frontend" / "src" / "components" / "datasets" / "VectorControls.tsx").read_text( encoding="utf-8" ) assert 'className="dataset-tool-heading"' in vector_controls assert 'className="dataset-tool-helper"' in vector_controls assert 'className="dataset-tool-grid"' in vector_controls assert 'className="dataset-tool-field"' in vector_controls assert 'className="dataset-tool-label"' in vector_controls assert 'className="dataset-tool-action-row"' in vector_controls assert "Beperk objecten tot het gekozen werkgebied." in vector_controls assert "Bereken de overlap met een andere bewaarde vectorlaag." in vector_controls