benchmarks/ added favourites timeline
[akkoma] / benchmarks / load_testing / fetcher.ex
index e378c51e7f55db8bcd64f4b28e27f8c098cf34a6..776105d34c186eea784b42137a4474e28c1e2bfb 100644 (file)
@@ -39,10 +39,12 @@ defmodule Pleroma.LoadTesting.Fetcher do
       "muting_user" => user
     }
 
+    following = User.following(user)
+
     Benchee.run(%{
       "User home timeline" => fn ->
         Pleroma.Web.ActivityPub.ActivityPub.fetch_activities(
-          [user.ap_id | user.following],
+          following,
           home_timeline_params
         )
       end,
@@ -55,12 +57,15 @@ defmodule Pleroma.LoadTesting.Fetcher do
         Pleroma.Web.ActivityPub.ActivityPub.fetch_public_activities(
           mastodon_federated_timeline_params
         )
+      end,
+      "User favourites timeline" => fn ->
+        Pleroma.Web.ActivityPub.ActivityPub.fetch_favourites(user)
       end
     })
 
     home_activities =
       Pleroma.Web.ActivityPub.ActivityPub.fetch_activities(
-        [user.ap_id | user.following],
+        following,
         home_timeline_params
       )
 
@@ -72,6 +77,8 @@ defmodule Pleroma.LoadTesting.Fetcher do
         mastodon_federated_timeline_params
       )
 
+    user_favourites = Pleroma.Web.ActivityPub.ActivityPub.fetch_favourites(user)
+
     Benchee.run(%{
       "Rendering home timeline" => fn ->
         Pleroma.Web.MastodonAPI.StatusView.render("index.json", %{
@@ -93,7 +100,13 @@ defmodule Pleroma.LoadTesting.Fetcher do
           for: user,
           as: :activity
         })
-      end
+      end,
+      "Rendering favorites timeline" => fn ->
+        Pleroma.Web.MastodonAPI.StatusView.render("index.json", %{
+              activities: user_favourites,
+              for: user,
+              as: :activity})
+      end,
     })
   end