Files
geointel-Public/backend/tests/test_sprint103_ai_lab_run_readiness.py
T

49 lines
1.7 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_detection_lab_exposes_run_readiness_contract() -> None:
lab = read_feature("detection")
assert "selectedDetectionModel = detectionModels.find" in lab
assert "detectionRequiresTileManifest = selectedDetectionModelId === 'yolo-configured'" in lab
assert "detectionTileManifestPath.trim().length > 0" in lab
assert "detectionRunReady" in lab
assert 'aria-label="Startklaar voor gebouwdetectie"' in lab
assert "Wat is nog nodig?" in lab
assert "Luchtbeeld" in lab
assert "Analysemodel" in lab
assert "Beeldtegels" in lab
assert "Klaar om te starten" in lab
def test_segmentation_lab_exposes_run_readiness_contract() -> None:
lab = read_feature("segmentation")
assert "segmentationHasDataset" in lab
assert "segmentationHasTileManifest = segmentationTileManifestPath.trim().length > 0" in lab
assert "segmentationRunReady" in lab
assert "selectedSegmentationModelConfigured" in lab
assert "selectedSegmentationModelLimitation" in lab
assert 'aria-label="Startklaar voor segmentatie"' in lab
assert "Wat is nog nodig?" in lab
assert "Rasterbestand" in lab
assert "Analysemodel" in lab
assert "Beeldtegels" in lab
assert "Klaar om te starten" in lab
def test_ai_lab_run_readiness_css_contract() -> None:
css = (ROOT / "frontend" / "src" / "styles" / "app.css").read_text(encoding="utf-8")
assert ".lab-readiness-panel" in css
assert ".lab-readiness-panel-ready" in css
assert ".lab-readiness-grid" in css
assert ".lab-readiness-item" in css
assert ".lab-readiness-item-ready" in css