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['isolation_requirement'] in {'unknown','dedicated','shared_ok','hybrid'}
    assert c['operations_capacity'] in {'low','adequate'}
    assert c['platform_complexity'] in {'low','medium','high'}
    assert c['migration_cost'] in {'low','high'}
    for k in ['tenant_defined','validated_customer_requirement','shared_tenancy_required','service_level_required','compliance_required','automation_readiness','shared_resource_benefit','reversible_seam']:
        assert isinstance(c[k],bool)
    assert isinstance(c['tenant_count'],int) and c['tenant_count']>=0
print('PASS learner fixtures: 8 premature-SaaS cases')
