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
54 lines
2.2 KiB
Python
54 lines
2.2 KiB
Python
from __future__ import annotations
|
|
|
|
from pathlib import Path
|
|
|
|
|
|
ROOT = Path(__file__).resolve().parents[2]
|
|
|
|
|
|
def test_change_detection_panel_exposes_structured_surfaces() -> None:
|
|
panel = (ROOT / "frontend" / "src" / "components" / "analysis" / "ChangeDetectionPanel.tsx").read_text(
|
|
encoding="utf-8"
|
|
)
|
|
|
|
assert 'className="panel change-detection-shell"' in panel
|
|
assert 'className="panel-header change-detection-heading"' in panel
|
|
assert 'className="change-detection-input-surface"' in panel
|
|
assert 'aria-label="Instellingen voor veranderingsanalyse"' in panel
|
|
assert 'className="change-detection-state-stack"' in panel
|
|
assert 'className="change-detection-result-surface"' in panel
|
|
assert 'aria-label="Samenvatting veranderingsanalyse"' in panel
|
|
assert 'className="change-detection-warning-surface"' in panel
|
|
|
|
|
|
def test_change_detection_panel_preserves_existing_compare_controls() -> None:
|
|
panel = (ROOT / "frontend" / "src" / "components" / "analysis" / "ChangeDetectionPanel.tsx").read_text(
|
|
encoding="utf-8"
|
|
)
|
|
|
|
assert "onSourceDatasetChange" in panel
|
|
assert "onTargetDatasetChange" in panel
|
|
assert "onIouThresholdChange" in panel
|
|
assert "onIncludeUnchangedChange" in panel
|
|
assert "onRun" in panel
|
|
assert "Kaartlagen vergelijken" in panel
|
|
assert "Voeg minstens twee vectorlagen toe om periodes te vergelijken." in panel
|
|
assert "result.added_count" in panel
|
|
assert "result.removed_count" in panel
|
|
assert "result.unchanged_count" in panel
|
|
|
|
|
|
def test_change_detection_density_css_contracts() -> None:
|
|
css = (ROOT / "frontend" / "src" / "styles" / "app.css").read_text(encoding="utf-8")
|
|
|
|
assert ".change-detection-shell" in css
|
|
assert ".change-detection-heading" in css
|
|
assert ".change-detection-input-surface" in css
|
|
assert ".change-detection-state-stack" in css
|
|
assert ".change-detection-result-surface" in css
|
|
assert ".change-detection-warning-surface" in css
|
|
assert ".change-detection-shell .form-grid" in css
|
|
assert ".change-detection-shell .summary-grid" in css
|
|
assert "grid-template-columns: repeat(auto-fit, minmax(9rem, 1fr));" in css
|
|
assert "grid-template-columns: repeat(auto-fit, minmax(7.5rem, 1fr));" in css
|