Files
geointel/backend/tests/test_sprint90_workflow_guidance.py
Jens faeb58ef6d
GeoIntel release gates / Compile, test, contracts and builds (push) Successful in 1m49s
GeoIntel release gates / Python and npm vulnerability policy (push) Successful in 21s
GeoIntel release gates / Production AI image, SBOM and container scan (push) Successful in 5m39s
GeoIntel release gates / Deploy exact gated revision to Unraid (push) Failing after 58m43s
Initial public release
2026-08-31 21:56:53 +02:00

69 lines
2.4 KiB
Python

from __future__ import annotations
from pathlib import Path
from tests.frontend_contract import read_feature
ROOT = Path(__file__).resolve().parents[2]
def test_overview_exposes_end_to_end_workflow_guidance() -> None:
overview = read_feature("shell")
assert 'aria-label="Voortgang van de werkstroom"' in overview
assert 'className="workflow-guidance-panel"' in overview
assert 'className="workflow-guidance-steps"' in overview
assert "steps.map" in overview
assert "Werkruimte en gebied" in overview
assert "Databronnen" in overview
assert "Kaart" in overview
assert "Controle en analyse" in overview
assert "Downloads" in overview
def test_workflow_guidance_routes_to_existing_workspaces() -> None:
app = read_feature("shell")
overview = read_feature("shell")
assert "target: 'data'" in overview
assert "target: 'map'" in overview
assert "target: 'analysis'" in overview
assert "target: 'exports'" in overview
assert "onOpenWorkspace={openWorkflowGuidanceStep}" in app
assert "onClick={() => onOpenWorkspace(step.target)}" in overview
assert "setActiveWorkspace(target)" in app
def test_workflow_guidance_has_responsive_contracts() -> None:
css = (ROOT / "frontend" / "src" / "styles" / "app.css").read_text(encoding="utf-8")
assert ".workflow-guidance-panel" in css
assert ".workflow-guidance-steps" in css
assert ".workflow-guidance-step" in css
assert ".workflow-guidance-step-active" in css
assert ".workflow-step-status" in css
assert "grid-template-columns: repeat(auto-fit, minmax(8rem, 1fr));" in css
def test_workflow_guidance_complete_state_and_map_copy_are_precise() -> None:
overview = read_feature("shell")
assert "workflowComplete" in overview
assert "Klaar om te delen" in overview
assert "objecten op de kaart" in overview
assert "selectedAreaHasGeometry" in overview
assert "Werkgebied ingeladen" in overview
def test_workflow_guidance_map_and_export_steps_reuse_dataset_context() -> None:
app = read_feature("shell")
overview = read_feature("shell")
assert "openWorkflowGuidanceStep" in app
assert "target === 'map'" in app
assert "openDatasetInMap(availableMapDatasets[0])" in app
assert "target === 'exports'" in app
assert "openDatasetExport(availableMapDatasets[0])" in app
assert "onOpenWorkspace={openWorkflowGuidanceStep}" in app
assert "onClick={() => onOpenWorkspace(step.target)}" in overview