aboutsummaryrefslogtreecommitdiff
path: root/benchmarks/load_testing/users.ex
diff options
context:
space:
mode:
authorEgor Kislitsyn <egor@kislitsyn.com>2020-06-02 18:50:37 +0400
committerEgor Kislitsyn <egor@kislitsyn.com>2020-06-02 18:50:37 +0400
commit68cb152a0861618035ac48a0e0b455f74d9b767c (patch)
treecb2f14ed088efa0ab5b6952ee7d74d69f524387a /benchmarks/load_testing/users.ex
parentcbcd592300673582e38d0bf539dcdb9a2c1985a1 (diff)
parent879304dcd94c778b3cdaa2b82f69fccf2b37090c (diff)
downloadpleroma-68cb152a0861618035ac48a0e0b455f74d9b767c.tar.gz
Merge branch 'develop' into openapi/admin/relay
Diffstat (limited to 'benchmarks/load_testing/users.ex')
-rw-r--r--benchmarks/load_testing/users.ex22
1 files changed, 21 insertions, 1 deletions
diff --git a/benchmarks/load_testing/users.ex b/benchmarks/load_testing/users.ex
index e4d0b22ff..6cf3958c1 100644
--- a/benchmarks/load_testing/users.ex
+++ b/benchmarks/load_testing/users.ex
@@ -27,7 +27,7 @@ defmodule Pleroma.LoadTesting.Users do
make_friends(main_user, opts[:friends])
- Repo.get(User, main_user.id)
+ User.get_by_id(main_user.id)
end
def generate_users(max) do
@@ -166,4 +166,24 @@ defmodule Pleroma.LoadTesting.Users do
)
|> Stream.run()
end
+
+ @spec prepare_users(User.t(), keyword()) :: map()
+ def prepare_users(user, opts) do
+ friends_limit = opts[:friends_used]
+ non_friends_limit = opts[:non_friends_used]
+
+ %{
+ user: user,
+ friends_local: fetch_users(user, friends_limit, :local, true),
+ friends_remote: fetch_users(user, friends_limit, :external, true),
+ non_friends_local: fetch_users(user, non_friends_limit, :local, false),
+ non_friends_remote: fetch_users(user, non_friends_limit, :external, false)
+ }
+ end
+
+ defp fetch_users(user, limit, local, friends?) do
+ user
+ |> get_users(limit: limit, local: local, friends?: friends?)
+ |> Enum.shuffle()
+ end
end