Files
ThothII/harness/tests/test_evidence_layout.py
T

41 lines
1.2 KiB
Python

from pathlib import Path
HARNESS_ROOT = Path(__file__).resolve().parents[1]
LEGACY_PATHS = (
"tht/ports/evidence.py",
"tht/adapters/evidence",
"tht/corpus",
"tht/search/evidence.py",
"tht/session/artifacts.py",
)
LEGACY_REFERENCES = (
"tht.ports.evidence",
"tht.adapters.evidence",
"tht.corpus",
"tht.search.evidence",
"tht.session.artifacts",
"build_evidence_sources",
"build_evidence_entries",
)
def test_replaced_evidence_layout_is_removed():
remaining = [path for path in LEGACY_PATHS if (HARNESS_ROOT / path).exists()]
assert remaining == []
def test_production_and_tests_use_only_the_evidence_module():
offenders = []
for root in (HARNESS_ROOT / "tht", HARNESS_ROOT / "tests"):
for path in root.rglob("*.py"):
if path == Path(__file__).resolve() or "__pycache__" in path.parts:
continue
contents = path.read_text(encoding="utf-8")
matched = [reference for reference in LEGACY_REFERENCES if reference in contents]
if matched:
offenders.append((path.relative_to(HARNESS_ROOT).as_posix(), matched))
assert offenders == []