From 271afcd940b743b84fae2ee40245d1e0c53cc714 Mon Sep 17 00:00:00 2001 From: lain Date: Mon, 20 Jan 2020 12:19:15 +0100 Subject: [PATCH] Add benchmark of any/all tag options --- .../mix/tasks/pleroma/benchmarks/tags.ex | 30 +++++++++++++++++++ 1 file changed, 30 insertions(+) diff --git a/benchmarks/mix/tasks/pleroma/benchmarks/tags.ex b/benchmarks/mix/tasks/pleroma/benchmarks/tags.ex index 73796b5f9..fd1506907 100644 --- a/benchmarks/mix/tasks/pleroma/benchmarks/tags.ex +++ b/benchmarks/mix/tasks/pleroma/benchmarks/tags.ex @@ -31,6 +31,36 @@ defmodule Mix.Tasks.Pleroma.Benchmarks.Tags do user = Repo.all(Pleroma.User) |> List.first() + Benchee.run( + %{ + "Hashtag fetching, any" => fn tags -> + Pleroma.Web.MastodonAPI.TimelineController.hashtag_fetching( + %{ + "any" => tags + }, + user, + false + ) + end, + # Will always return zero results because no overlapping hashtags are generated. + "Hashtag fetching, all" => fn tags -> + Pleroma.Web.MastodonAPI.TimelineController.hashtag_fetching( + %{ + "all" => tags + }, + user, + false + ) + end + }, + inputs: + tags + |> Enum.map(fn {_, v} -> v end) + |> Enum.chunk_every(2) + |> Enum.map(fn tags -> {"For #{inspect(tags)}", tags} end), + time: 5 + ) + Benchee.run( %{ "Hashtag fetching" => fn tag ->