Files
geointel/backend/tests/test_sprint126_detection_quality_matrix.py
T
Codex 3f5ca4c85e
GeoIntel CI / docs-smoke (push) Has been cancelled
GeoIntel CI / contract-smoke (push) Has been cancelled
Suppress duplicate YOLO tile detections
2026-07-09 10:55:45 +02:00

41 lines
1.6 KiB
Python

from pathlib import Path
ROOT = Path(__file__).resolve().parents[2]
def test_detection_quality_matrix_compares_models_tiles_and_thresholds() -> None:
script_path = ROOT / "scripts" / "run_detection_quality_matrix.sh"
readiness = (ROOT / "scripts" / "run_readiness_check.sh").read_text(encoding="utf-8")
assert script_path.exists()
script = script_path.read_text(encoding="utf-8")
assert "bash -n scripts/run_detection_quality_matrix.sh" in readiness
assert "verify_real_data_detection_qa_workflow.sh" in script
assert "QUALITY_MODEL_ASSET_IDS" in script
assert "QUALITY_TILE_SIZES" in script
assert "QUALITY_TILE_OVERLAPS" in script
assert "QUALITY_THRESHOLDS" in script
assert "REAL_MODEL_ASSET_ID" in script
assert "REAL_TILE_SIZE" in script
assert "REAL_TILE_OVERLAP" in script
assert "REAL_CONFIDENCE_THRESHOLD" in script
assert "REAL_RASTER_PATH" in script
assert "REAL_REFERENCE_VECTOR_PATH" in script
assert "/api/v1/projects/${project_id}/quality-checks" in script
assert "/api/v1/detection/runs/${analysis_run_id}" in script
assert "quality_matrix_summary.json" in script
assert "raw_detection_count" in script
assert "suppressed_detection_count" in script
assert "duplicate_iou_threshold" in script
assert "best_by_score" in script
assert "best_by_recall" in script
assert "best_by_precision" in script
assert "quality_score" in script
assert "false_positives" in script
assert "false_negatives" in script
assert "demo/workflow" not in script
assert "fixture_mode" not in script
assert "will_download_models" not in script