generateTestAccount(); /** @var User $differentUser */ $differentUser = User::factory()->create(); $real = Uuid::uuid4()->toString(); // Generate a UUID that lines up with a user in the database if it were to be cast to an int. $uuid = ($prefix ?: $differentUser->id) . substr($real, strlen($prefix ?: (string) $differentUser->id)); /** @var User $subuser */ $subuser = User::factory()->create(['uuid' => $uuid]); Subuser::query()->forceCreate([ 'user_id' => $subuser->id, 'server_id' => $server->id, 'permissions' => [Permission::ACTION_WEBSOCKET_CONNECT], ]); $this->withoutExceptionHandling() ->actingAs($user) ->deleteJson($this->link($server) . "/users/$subuser->uuid")->assertNoContent(); Bus::assertDispatchedTimes(function (RevokeSftpAccessJob $job) use ($subuser, $server) { return $job->user === $subuser->uuid && $job->target->is($server); }); } }