from evaluator import evaluate
import json, pathlib, sys
p=pathlib.Path(__file__).parent/'fixtures/cases.json'
cases=json.loads(p.read_text())['cases']
fail=[]
for i,c in enumerate(cases,1):
    got=evaluate(c['record'])
    ok=got==c['expected']
    print(f"{i:02d} {'PASS' if ok else 'FAIL'} {c['name']}: {got}")
    if not ok: fail.append((c['name'],c['expected'],got))
print(f"SUMMARY {len(cases)-len(fail)}/{len(cases)} PASS")
if fail:
    print('FAILURES',fail)
    sys.exit(1)
