Files
geointel/backend/tests/test_live_migration_smoke_script.py
T
Codex 35b42878c7
GeoIntel CI / docs-smoke (push) Has been cancelled
GeoIntel CI / contract-smoke (push) Has been cancelled
Report PostgreSQL collation drift in live smoke
2026-06-17 06:47:09 +02:00

35 lines
1.4 KiB
Python

from pathlib import Path
def test_live_migration_smoke_checks_postgis_after_migrations() -> None:
script = Path(__file__).resolve().parents[2] / "scripts" / "live_migration_smoke.sh"
content = script.read_text(encoding="utf-8")
upgrade_index = content.index("-m alembic upgrade head")
postgis_index = content.index("PostGIS_Version()")
assert upgrade_index < postgis_index
def test_live_migration_smoke_checks_required_runtime_schema_objects() -> None:
script = Path(__file__).resolve().parents[2] / "scripts" / "live_migration_smoke.sh"
content = script.read_text(encoding="utf-8")
assert "to_regclass(:object_name)" in content
assert '"public.projects"' in content
assert '"public.datasets"' in content
assert '"public.vector_features"' in content
assert '"public.detections"' in content
assert '"public.segmentations"' in content
assert '"public.ix_segmentations_geometry"' in content
def test_live_migration_smoke_reports_collation_version_mismatch_without_failing() -> None:
script = Path(__file__).resolve().parents[2] / "scripts" / "live_migration_smoke.sh"
content = script.read_text(encoding="utf-8")
assert "pg_database_collation_actual_version(oid)" in content
assert "COLLATION_VERSION_MISMATCH" in content
assert "REFRESH COLLATION VERSION" in content
assert "Database collation version: ok" in content