1]); $reflection = new \ReflectionMethod($resource, 'abilityMap'); $abilityMap = $reflection->invoke($resource); $this->assertArrayHasKey('can_edit_layouts', $abilityMap); $this->assertEquals('core.templates.layouts.edit', $abilityMap['can_edit_layouts']); } /** * abilityMap에 기존 권한이 유지되어 있는지 확인 */ public function test_ability_map_includes_existing_permissions(): void { $resource = new TemplateResource(['id' => 1]); $reflection = new \ReflectionMethod($resource, 'abilityMap'); $abilityMap = $reflection->invoke($resource); $this->assertArrayHasKey('can_install', $abilityMap); $this->assertArrayHasKey('can_activate', $abilityMap); $this->assertArrayHasKey('can_uninstall', $abilityMap); $this->assertArrayHasKey('can_edit_layouts', $abilityMap); $this->assertCount(4, $abilityMap); } }