/** * Create and Attach a Role to User. * @param string $role Role name. * @param User|array $user User or array of where clausules. * @return array Array containing $role and $user created. */ protected function createAndAttachRole($role, $user) { $role = $this->createRole($role); if (!$user instanceof User) { $user = User::where($user)->first(); } $role->users()->attach($user); $this->seeRoleAttachedToUserInDatabase($role, $user); return [$role, $user]; }
/** * Create and Attach a Permission to User. * @param string $permission * @param Role $role Role or array of where clausules. * @param string $readableName Permission readable name. * @return array Array containing created $permission and $role. */ protected function createAndAttachPermissionToRole($permission, $role, $readableName = null) { $permission = $this->createPermission($permission, $readableName); if (!$role instanceof Role) { $role = User::where($role)->first(); } $permission->roles()->attach($role); $this->seePermissionAttachedToRoleInDatabase($permission, $role); return [$permission, $role]; }