| Conditions | 4 |
| Paths | 4 |
| Total Lines | 16 |
| Lines | 0 |
| Ratio | 0 % |
| Tests | 9 |
| CRAP Score | 4 |
| Changes | 0 | ||
| 1 | <?php |
||
| 55 | 3 | private function resolveRoleHierarchy(array $roles, array $alreadySolvedRoles = []): array |
|
| 56 | { |
||
| 57 | 3 | foreach ($roles as $role) { |
|
| 58 | 3 | if (isset($this->roleHierarchy[$role])) { |
|
| 59 | 2 | if (in_array($role, $alreadySolvedRoles, true)) { |
|
| 60 | 1 | continue; |
|
| 61 | } |
||
| 62 | |||
| 63 | 2 | $alreadySolvedRoles[] = $role; |
|
| 64 | 2 | $resolveRoles = $this->resolveRoleHierarchy($this->roleHierarchy[$role], $alreadySolvedRoles); |
|
| 65 | 3 | $roles = array_merge($roles, $resolveRoles); |
|
| 66 | } |
||
| 67 | } |
||
| 68 | |||
| 69 | 3 | return $roles; |
|
| 70 | } |
||
| 71 | } |
||
| 72 |