X-Git-Url: http://source.bookstackapp.com/bookstack/blobdiff_plain/03ee3d21bab5ef1b8fc09de27f3aa8115d947dd1..refs/pull/806/head:/tests/Permissions/RestrictionsTest.php diff --git a/tests/Permissions/RestrictionsTest.php b/tests/Permissions/RestrictionsTest.php index 433ae7ff9..53e7ad3f3 100644 --- a/tests/Permissions/RestrictionsTest.php +++ b/tests/Permissions/RestrictionsTest.php @@ -1,7 +1,7 @@ user = $this->getEditor(); $this->viewer = $this->getViewer(); - $this->permissionService = $this->app[PermissionService::class]; } - /** - * Manually set some permissions on an entity. - * @param \BookStack\Entity $entity - * @param $actions - */ - protected function setEntityRestrictions(\BookStack\Entity $entity, $actions) + protected function setEntityRestrictions(Entity $entity, $actions = [], $roles = []) { - $entity->restricted = true; - $entity->permissions()->delete(); - - $role = $this->user->roles->first(); - $viewerRole = $this->viewer->roles->first(); - - $permissions = []; - foreach ($actions as $action) { - $permissions[] = [ - 'role_id' => $role->id, - 'action' => strtolower($action) - ]; - $permissions[] = [ - 'role_id' => $viewerRole->id, - 'action' => strtolower($action) - ]; - } - $entity->permissions()->createMany($permissions); - - $entity->save(); - $entity->load('permissions'); - $this->permissionService->buildJointPermissionsForEntity($entity); - $entity->load('jointPermissions'); + $roles = [ + $this->user->roles->first(), + $this->viewer->roles->first(), + ]; + parent::setEntityRestrictions($entity, $actions, $roles); } public function test_book_view_restriction()