from __future__ import annotations from pathlib import Path ROOT = Path(__file__).resolve().parents[2] def test_app_uses_dataset_presentational_components() -> None: app = (ROOT / "frontend" / "src" / "App.tsx").read_text(encoding="utf-8") inspector = ( ROOT / "frontend" / "src" / "components" / "inspector" / "WorkbenchInspector.tsx" ).read_text(encoding="utf-8") assert "from './components/datasets/DatasetPanel'" in app assert "from './components/inspector/WorkbenchInspector'" in app assert "" in inspector assert "
Raster operations" not in app assert "

Vector operations

" not in app def test_dataset_panel_owns_upload_and_list_markup() -> None: panel = (ROOT / "frontend" / "src" / "components" / "datasets" / "DatasetPanel.tsx").read_text(encoding="utf-8") assert "Eigen bronbestand toevoegen" in panel assert "Metadata vernieuwen" in panel assert "Details en acties" in panel assert "onLoadDatasetDetails" in panel assert "onRefreshMetadata" in panel def test_dataset_detail_panel_composes_raster_and_vector_controls() -> None: detail_panel = (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 "