assertWritable(new SchoolYearContext(4, '2025-2026', 'active')); $this->assertTrue(true); } public function testAllowsDraftOnlyWhenExplicitlyAllowedForAdmin(): void { $guard = new SchoolYearWriteGuard(); $guard->assertWritable( new SchoolYearContext(5, '2026-2027', 'draft'), allowDraftForAdmin: true, isAdmin: true ); $this->assertTrue(true); } public function testRejectsClosedYearWrites(): void { $this->expectException(RuntimeException::class); (new SchoolYearWriteGuard())->assertWritable( new SchoolYearContext(3, '2024-2025', 'closed') ); } public function testRejectsDraftYearWritesByDefault(): void { $this->expectException(RuntimeException::class); (new SchoolYearWriteGuard())->assertWritable( new SchoolYearContext(5, '2026-2027', 'draft') ); } }