import json, pathlib, sys
from evaluator import evaluate, controls
p=pathlib.Path(__file__).parent/'fixtures/cases.json'
data=json.loads(p.read_text(encoding='utf-8'))['cases']
passed=0; total=0
for c in data:
    r=controls(c)
    for name,ok in r.items():
        total+=1; passed+=int(bool(ok))
        print(('PASS' if ok else 'FAIL'), c['id'], name, 'decision='+evaluate(c))
print(f'SUMMARY {passed}/{total} PASS')
sys.exit(0 if passed==total==48 else 1)
