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
assert len({c['id'] for c in cases})==8
for c in cases:
    assert isinstance(c['authenticated'],bool)
    assert c['resource'] and c['action']
    assert isinstance(c['authz_check_present'],bool)
    assert c['runtime_outcome'] in {'ALLOW','DENY'}
    assert isinstance(c['audit_event_present'],bool)
    assert isinstance(c['logged_fields'],list)
    assert c['request_id']
    assert isinstance(c['transfer'],bool)
print('PASS: 8 deterministic synthetic auth/audit fixtures loaded')
