| 123456789101112131415161718192021222324252627282930 |
- from pathlib import Path
- ROOT = Path(__file__).resolve().parents[1]
- def test_active_metadata_migration_is_additive_traceable_and_non_destructive():
- migration = (
- ROOT / "migrations/versions/20260730_380_active_metadata_lineage.py"
- ).read_text(encoding="utf-8")
- assert 'revision = "20260730_380"' in migration
- assert 'down_revision = "20260730_370"' in migration
- for table in (
- "active_metadata_plans",
- "active_metadata_runs",
- "active_metadata_assets",
- "active_metadata_asset_versions",
- "active_metadata_changes",
- "active_metadata_lineage",
- "active_metadata_health_signals",
- "active_metadata_corrections",
- "active_metadata_correction_audits",
- ):
- assert f"CREATE TABLE public.{table}" in migration
- assert "UNIQUE (plan_uid, batch_key)" in migration
- assert "deletion_candidate" in migration
- assert "source_field" in migration and "target_field" in migration
- assert "failure_reason" in migration
- assert "DROP TABLE" not in migration.upper()
- assert "DELETE FROM public" not in migration
|