from pathlib import Path
import json
R=Path(__file__).resolve().parent
cases=json.loads((R/'fixtures/cases.json').read_text(encoding='utf-8'))['cases']
assert len(cases)==8
for c in cases:
    assert c['runbook'] in {'current','stale','missing'}
    assert c['rehearsal'] in {'not_run','fail','safe_escalate','pass'}
    assert isinstance(c['backup_slots'],int) and c['backup_slots']>=0
    assert isinstance(c['backup_knowledge'],bool) and isinstance(c['independent_access'],bool)
print('PASS learner fixtures: 8 key-person dependency cases')
