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