守住 migration blocker 修補
This commit is contained in:
@@ -1,4 +1,5 @@
|
||||
import re
|
||||
import stat
|
||||
from pathlib import Path
|
||||
|
||||
from database.manager import Base
|
||||
@@ -25,3 +26,27 @@ def test_all_orm_metadata_tables_have_create_table_migration():
|
||||
migration_tables = _migration_created_tables()
|
||||
|
||||
assert metadata_tables - migration_tables == set()
|
||||
|
||||
|
||||
def test_v2_blocker_migrations_exist_and_are_runner_readable():
|
||||
required = [
|
||||
"031_fix_incidents_autoheal_schema.sql",
|
||||
"032_market_intel_core_schema.sql",
|
||||
"033_fix_host_health_probe_labels.sql",
|
||||
"034_add_embedding_signature_to_rag_tables.sql",
|
||||
"035_core_business_tables_baseline.sql",
|
||||
"036_normalize_incidents_dual_columns.sql",
|
||||
"037_add_action_plans_guardrails.sql",
|
||||
]
|
||||
|
||||
for filename in required:
|
||||
path = ROOT / "migrations" / filename
|
||||
assert path.exists(), f"missing migration: {filename}"
|
||||
mode = stat.S_IMODE(path.stat().st_mode)
|
||||
assert mode & stat.S_IRGRP, f"{filename} is not group-readable"
|
||||
assert mode & stat.S_IROTH, f"{filename} is not world-readable"
|
||||
|
||||
|
||||
def test_legacy_zero_byte_database_decoys_do_not_return():
|
||||
for filename in ["momo.db", "momo_data.db", "momo_database.db"]:
|
||||
assert not (ROOT / "database" / filename).exists()
|
||||
|
||||
Reference in New Issue
Block a user