summaryrefslogtreecommitdiff
path: root/benchmarks/mix/tasks
diff options
context:
space:
mode:
authorIvan Tashkinov <ivantashkinov@gmail.com>2020-07-02 16:36:54 +0300
committerIvan Tashkinov <ivantashkinov@gmail.com>2020-07-02 16:36:54 +0300
commit61180ab6f4b85ab78de2eaf1bc1b974c9e7908af (patch)
tree0970691b2060e06b6feaf4e645021298a7efda0d /benchmarks/mix/tasks
parent0e23138b50f1fdd9ea78df31eec1b3caac905e2c (diff)
parent4c044f62258b33a95b8281e1eb42a5e0ce47d42d (diff)
downloadpleroma-61180ab6f4b85ab78de2eaf1bc1b974c9e7908af.tar.gz
pleroma-61180ab6f4b85ab78de2eaf1bc1b974c9e7908af.zip
Merge remote-tracking branch 'remotes/origin/develop' into 2168-media-preview-proxy
# Conflicts: # config/config.exs # lib/pleroma/web/media_proxy/media_proxy.ex # lib/pleroma/web/media_proxy/media_proxy_controller.ex
Diffstat (limited to 'benchmarks/mix/tasks')
-rw-r--r--benchmarks/mix/tasks/pleroma/benchmarks/tags.ex38
1 files changed, 34 insertions, 4 deletions
diff --git a/benchmarks/mix/tasks/pleroma/benchmarks/tags.ex b/benchmarks/mix/tasks/pleroma/benchmarks/tags.ex
index 657403202..c051335a5 100644
--- a/benchmarks/mix/tasks/pleroma/benchmarks/tags.ex
+++ b/benchmarks/mix/tasks/pleroma/benchmarks/tags.ex
@@ -5,7 +5,6 @@ defmodule Mix.Tasks.Pleroma.Benchmarks.Tags do
import Ecto.Query
alias Pleroma.Repo
- alias Pleroma.Web.MastodonAPI.TimelineController
def run(_args) do
Mix.Pleroma.start_pleroma()
@@ -37,7 +36,7 @@ defmodule Mix.Tasks.Pleroma.Benchmarks.Tags do
Benchee.run(
%{
"Hashtag fetching, any" => fn tags ->
- TimelineController.hashtag_fetching(
+ hashtag_fetching(
%{
"any" => tags
},
@@ -47,7 +46,7 @@ defmodule Mix.Tasks.Pleroma.Benchmarks.Tags do
end,
# Will always return zero results because no overlapping hashtags are generated.
"Hashtag fetching, all" => fn tags ->
- TimelineController.hashtag_fetching(
+ hashtag_fetching(
%{
"all" => tags
},
@@ -67,7 +66,7 @@ defmodule Mix.Tasks.Pleroma.Benchmarks.Tags do
Benchee.run(
%{
"Hashtag fetching" => fn tag ->
- TimelineController.hashtag_fetching(
+ hashtag_fetching(
%{
"tag" => tag
},
@@ -80,4 +79,35 @@ defmodule Mix.Tasks.Pleroma.Benchmarks.Tags do
time: 5
)
end
+
+ defp hashtag_fetching(params, user, local_only) do
+ tags =
+ [params["tag"], params["any"]]
+ |> List.flatten()
+ |> Enum.uniq()
+ |> Enum.filter(& &1)
+ |> Enum.map(&String.downcase(&1))
+
+ tag_all =
+ params
+ |> Map.get("all", [])
+ |> Enum.map(&String.downcase(&1))
+
+ tag_reject =
+ params
+ |> Map.get("none", [])
+ |> Enum.map(&String.downcase(&1))
+
+ _activities =
+ params
+ |> Map.put(:type, "Create")
+ |> Map.put(:local_only, local_only)
+ |> Map.put(:blocking_user, user)
+ |> Map.put(:muting_user, user)
+ |> Map.put(:user, user)
+ |> Map.put(:tag, tags)
+ |> Map.put(:tag_all, tag_all)
+ |> Map.put(:tag_reject, tag_reject)
+ |> Pleroma.Web.ActivityPub.ActivityPub.fetch_public_activities()
+ end
end