"""Report-card code translation uses the live-sampled Ofsted vocabulary (pipeline/scripts/diagnose_compare_gaps.py, TASK 7 VALUE SAMPLE): Exceptional / Strong standard / Expected standard / Needs attention / Urgent improvement — never the consultation draft's 'Attention needed'.""" from backend.ofsted_codes import ( REPORT_CARD_GRADE_NAMES, ofsted_page_url, report_card_labels, ) def test_scale_is_sampled_vocabulary(): assert REPORT_CARD_GRADE_NAMES == { 1: "Exceptional", 2: "Strong standard", 3: "Expected standard", 4: "Needs attention", 5: "Urgent improvement", } def test_labels_only_for_populated_areas_and_never_safeguarding(): ofsted = { "rc_achievement": 2, "rc_inclusion": 3, "rc_attendance_behaviour": 4, "rc_early_years": None, "rc_safeguarding_met": True, "overall_effectiveness": None, } labels = report_card_labels(ofsted) assert labels == { "rc_achievement": {"code": 2, "label": "Strong standard"}, "rc_inclusion": {"code": 3, "label": "Expected standard"}, "rc_attendance_behaviour": {"code": 4, "label": "Needs attention"}, } def test_unknown_code_is_skipped_not_crashed(): assert report_card_labels({"rc_achievement": 9}) == {} def test_provider_url(): assert ofsted_page_url(138690) == "https://reports.ofsted.gov.uk/provider/21/138690"