Files
geointel/docs/FIXTURE_STRATEGY.md
T
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

1.5 KiB

Fixture Strategy

Purpose

GeoIntel needs small, repeatable fixtures so Codex can build and test without relying on huge external downloads.

Fixture principles

  • Fixtures must be tiny.
  • Fixtures must be deterministic.
  • Fixtures must be documented.
  • Fixtures must not pretend to be official data.
  • Real-source providers can be added later without breaking tests.

Required V1 fixtures

reference_buildings.geojson

Purpose:

  • reference building polygons for QA/QC tests.

Content:

  • 3 to 10 simple polygons.
  • one polygon matching a prediction exactly;
  • one partially overlapping;
  • one unmatched reference object.

predicted_buildings.geojson

Purpose:

  • deterministic detection output fixture.

Content:

  • one true positive exact/near match;
  • one true positive partial match;
  • one false positive;
  • one low-confidence detection.

project_area.geojson

Purpose:

  • test project area.

Content:

  • polygon enclosing all reference/predicted fixtures.

tiny_raster.tif

Purpose:

  • raster metadata and clipping tests.

Content:

  • very small georeferenced raster if feasible.
  • if not feasible initially, document missing fixture and provide tests for raster metadata with generated temporary raster.

Development providers

DevelopmentDetectionProvider

Returns predictions from predicted_buildings.geojson for a selected demo run.

LocalFixtureReferenceProvider

Returns reference_buildings.geojson as a cached reference layer.

Acceptance

The fixture strategy is complete when QA/QC tests can run fully offline.