assertSame('YEAR_SCOPED', SchoolYearTableRegistry::categoryOf('invoices')); $this->assertSame('YEAR_SCOPED', SchoolYearTableRegistry::categoryOf('attendance_data')); } public function testClassifiesGlobalTables(): void { $this->assertSame('GLOBAL', SchoolYearTableRegistry::categoryOf('users')); $this->assertSame('GLOBAL', SchoolYearTableRegistry::categoryOf('configuration')); } public function testClassifiesIdentityTables(): void { $this->assertSame('IDENTITY_WITH_YEAR_RELATION', SchoolYearTableRegistry::categoryOf('students')); $this->assertSame('IDENTITY_WITH_YEAR_RELATION', SchoolYearTableRegistry::categoryOf('teachers')); } public function testClassifiesContextTables(): void { $this->assertSame('CONTEXT', SchoolYearTableRegistry::categoryOf('notifications')); $this->assertSame('CONTEXT', SchoolYearTableRegistry::categoryOf('support_requests')); } public function testRejectsUnregisteredTables(): void { $this->expectException(InvalidArgumentException::class); SchoolYearTableRegistry::categoryOf('unknown_table'); } }