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['framebuffer_total_gib'] > 0
    assert 0 <= c['framebuffer_used_gib'] <= c['framebuffer_total_gib']
    assert 0 <= c['gpu_util_pct'] <= 100
    assert c['concurrency'] >= 1 and c['request_tokens'] > 0
    assert c['latency_slo_ms'] > 0 and c['minimum_throughput_rps'] >= 0
    assert c['post_latency_ms'] >= 0 and c['post_throughput_rps'] >= 0
print('PASS learner fixtures: 8 GPU capacity cases')
