DeliberationDecision::PASSED, 'Passed' => DeliberationDecision::PASSED, 'Repeat Class' => DeliberationDecision::REPEAT_CLASS, 'Make-up exam in fall' => DeliberationDecision::MAKE_UP_EXAM, 'Expel' => DeliberationDecision::EXPELLED, 'Expelled' => DeliberationDecision::EXPELLED, 'Withdrawn' => DeliberationDecision::WITHDRAWN, 'Withdraw' => DeliberationDecision::WITHDRAWN, 'Deferred' => DeliberationDecision::DEFERRED_DECISION, 'Deferred decision' => DeliberationDecision::DEFERRED_DECISION, ]; foreach ($cases as $input => $expected) { $this->assertSame($expected, DeliberationDecision::normalize($input), $input); } } public function testBlankAndUnknownDecisionsRemainUnmapped(): void { $this->assertNull(DeliberationDecision::normalize('')); $this->assertNull(DeliberationDecision::normalize('Teacher review needed')); } }