getAccessibleRoles() public method

Returns an array of roles that are accessible by $roles.
public getAccessibleRoles ( array $roles ) : array
$roles array
return array
Example #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));
 }
Example #2
0
 /**
  * Sets roles for current user.
  */
 private function setUserRoles()
 {
     $this->initRoleHierarchy();
     $this->user->setRoles($this->roleHierarchy->getAccessibleRoles($this->user->getRoles()));
 }