This class reads the current role hierarchy and creates an array tree of roles for easier access.
Inheritance: use trait Webiny\Component\StdLib\StdLibTrait
示例#1
0
 public function testGetAccessibleRoles()
 {
     $roleHierarchy = new RoleHierarchy(['ROLE_USER' => 'ROLE_EDITOR', 'ROLE_ADMIN' => 'ROLE_USER', 'ROLE_MOCK' => 'ROLE_ADMIN']);
     $roles = [new Role('ROLE_EDITOR')];
     $this->assertCount(1, $roleHierarchy->getAccessibleRoles($roles));
     $roles = [new Role('ROLE_USER')];
     $this->assertCount(2, $roleHierarchy->getAccessibleRoles($roles));
     $roles = [new Role('ROLE_ADMIN')];
     $this->assertCount(3, $roleHierarchy->getAccessibleRoles($roles));
     $roles = [new Role('ROLE_MOCK')];
     $this->assertCount(4, $roleHierarchy->getAccessibleRoles($roles));
 }
示例#2
0
 /**
  * Sets roles for current user.
  */
 private function setUserRoles()
 {
     $this->initRoleHierarchy();
     $this->user->setRoles($this->roleHierarchy->getAccessibleRoles($this->user->getRoles()));
 }