Files
geointel/backend/tests/test_sprint177_mol_primary_focus.py
T
Codex 0aff8e3b8c
GeoIntel release gates / Compile, test, contracts and builds (push) Canceled after 0s
GeoIntel release gates / Python and npm vulnerability policy (push) Canceled after 0s
GeoIntel release gates / GIS image, SBOM and container scan (push) Canceled after 0s
feat(scope): make Belgium and North Sea operational default
2026-07-22 02:11:48 +02:00

66 lines
2.6 KiB
Python

from pathlib import Path
ROOT = Path(__file__).resolve().parents[2]
def test_frontend_declares_national_scope_as_primary_operating_focus() -> None:
focus = (ROOT / "frontend" / "src" / "config" / "primaryFocus.ts").read_text(
encoding="utf-8"
)
project_hook = (ROOT / "frontend" / "src" / "hooks" / "useProjectWorkspace.ts").read_text(
encoding="utf-8"
)
map_source = (ROOT / "frontend" / "src" / "components" / "GeoMap.tsx").read_text(
encoding="utf-8"
)
navigation = (
ROOT
/ "frontend"
/ "src"
/ "components"
/ "shell"
/ "WorkbenchNavigation.tsx"
).read_text(encoding="utf-8")
assert "NATIONAL_WORKSPACE_PROJECT_NAME = 'Belgium and North Sea Workbench'" in focus
assert "NATIONAL_WORKSPACE_REGION = 'Belgie en Belgische Noordzee'" in focus
assert "NATIONAL_MAP_CENTER" in focus
assert "return nationalProject.id" in project_hook
assert "hasMappedAnalysisContext(data)" in project_hook
assert "dataset.dataset_type === 'raster'" in project_hook
assert "dataset.dataset_type === 'vector' || dataset.dataset_type === 'geojson'" in project_hook
assert "PRIMARY_FOCUS_AREA_NAME" not in project_hook
assert "PRIMARY_FOCUS_AREA_GEOJSON" not in project_hook
assert "center: NATIONAL_MAP_CENTER" in map_source
assert "zoom: NATIONAL_MAP_ZOOM" in map_source
assert "GeoIntel" in navigation
assert "Atlas Workbench" in navigation
def test_operator_workflows_put_mol_first_and_name_future_projects() -> None:
samples = (ROOT / "scripts" / "prepare_operator_real_data_samples.py").read_text(
encoding="utf-8"
)
matrix = (ROOT / "scripts" / "run_detection_quality_matrix.sh").read_text(
encoding="utf-8"
)
multi_matrix = (
ROOT / "scripts" / "run_multi_sample_detection_quality_matrix.sh"
).read_text(encoding="utf-8")
assert samples.index('"mol": OperatorSample(') < samples.index('"geel": OperatorSample(')
assert 'QUALITY_SAMPLE_SLUG="${QUALITY_SAMPLE_SLUG:-}"' in matrix
assert "sample ${QUALITY_SAMPLE_SLUG}" in matrix
assert 'QUALITY_SAMPLE_SLUG="${sample_slug}"' in multi_matrix
def test_product_docs_record_national_scope_and_mol_regression_focus() -> None:
readme = (ROOT / "README.md").read_text(encoding="utf-8")
vision = (ROOT / "docs" / "PRODUCT_VISION.md").read_text(encoding="utf-8")
assert "Belgium and the Belgian North Sea" in readme
assert "Mol and the Kempen remain deep regression" in readme
assert "Belgie en de Belgische Noordzee" in vision
assert "Mol en de Kempen blijven gouden regressiegebieden" in vision