'teacher_assistant', 'slug' => 'teacher_assistant'], ]); $this->assertFalse($flags['is_admin']); $this->assertTrue($flags['is_teacher']); $this->assertFalse($flags['is_parent']); $this->assertSame('teacher', UserAccessProfileModel::primaryCategory($flags)); } public function testAnyNonTeacherStaffRoleCountsAsAdmin(): void { $flags = UserAccessProfileModel::flagsForRoles([ ['name' => 'head of fa', 'slug' => 'head_of_fa'], ]); $this->assertTrue($flags['is_admin']); $this->assertFalse($flags['is_teacher']); $this->assertFalse($flags['is_parent']); $this->assertSame('admin', UserAccessProfileModel::primaryCategory($flags)); } public function testMultiRoleUserKeepsAllAccessFlags(): void { $flags = UserAccessProfileModel::flagsForRoles(['parent', 'teacher']); $this->assertFalse($flags['is_admin']); $this->assertTrue($flags['is_teacher']); $this->assertTrue($flags['is_parent']); $this->assertSame('teacher', UserAccessProfileModel::primaryCategory($flags)); } }