diff options
author | Egor Kislitsyn <egor@kislitsyn.com> | 2020-06-29 16:09:49 +0400 |
---|---|---|
committer | Egor Kislitsyn <egor@kislitsyn.com> | 2020-06-29 16:09:49 +0400 |
commit | 4a306720e8be8633e192f7b2c98f129a315939b9 (patch) | |
tree | ed5ec059c532777a28eade72f384c8a800ead496 /benchmarks/load_testing/users.ex | |
parent | d15aa9d9503e59b3cd0731394855781f435ec63c (diff) | |
parent | 651f269568cb7e54cd96d8a0d8ea3533f77e9a3a (diff) | |
download | pleroma-4a306720e8be8633e192f7b2c98f129a315939b9.tar.gz pleroma-4a306720e8be8633e192f7b2c98f129a315939b9.zip |
Merge branch 'develop' into remove-twitter-api
Diffstat (limited to 'benchmarks/load_testing/users.ex')
-rw-r--r-- | benchmarks/load_testing/users.ex | 22 |
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 |