summaryrefslogtreecommitdiff
path: root/test/support/builders
diff options
context:
space:
mode:
authorRoger Braun <roger@rogerbraun.net>2017-03-21 20:22:05 +0100
committerRoger Braun <roger@rogerbraun.net>2017-03-21 20:22:05 +0100
commitd4cf273f289168c6555624717a4060e0c15b7197 (patch)
treec6f3c4c55925251308eac005bdd9bfaaef02732a /test/support/builders
parentad303783afc0be046d0bcb4b70b3bce9aabac27f (diff)
downloadpleroma-d4cf273f289168c6555624717a4060e0c15b7197.tar.gz
pleroma-d4cf273f289168c6555624717a4060e0c15b7197.zip
Add limiting to activity pub fetching.
Diffstat (limited to 'test/support/builders')
-rw-r--r--test/support/builders/activity_builder.ex35
1 files changed, 22 insertions, 13 deletions
diff --git a/test/support/builders/activity_builder.ex b/test/support/builders/activity_builder.ex
index 0b7f79c5f..b44afa896 100644
--- a/test/support/builders/activity_builder.ex
+++ b/test/support/builders/activity_builder.ex
@@ -1,11 +1,10 @@
defmodule Pleroma.Builders.ActivityBuilder do
alias Pleroma.Builders.UserBuilder
alias Pleroma.Web.ActivityPub.ActivityPub
- alias Pleroma.User
- def public_and_non_public do
- {:ok, user} = UserBuilder.insert
- public = %{
+ def build(data \\ %{}, opts \\ %{}) do
+ user = opts[:user] || UserBuilder.build
+ activity = %{
"id" => 1,
"actor" => user.ap_id,
"to" => ["https://www.w3.org/ns/activitystreams#Public"],
@@ -14,16 +13,26 @@ defmodule Pleroma.Builders.ActivityBuilder do
"content" => "test"
}
}
+ Map.merge(activity, data)
+ end
- non_public = %{
- "id" => 2,
- "actor" => user.ap_id,
- "to" => [],
- "object" => %{
- "type" => "Note",
- "content" => "test"
- }
- }
+ def insert(data \\ %{}, opts \\ %{}) do
+ activity = build(data, opts)
+ ActivityPub.insert(activity)
+ end
+
+ def insert_list(times, data \\ %{}, opts \\ %{}) do
+ Enum.map(1..times, fn (n) ->
+ {:ok, activity} = insert(%{"id" => n})
+ activity
+ end)
+ end
+
+ def public_and_non_public do
+ {:ok, user} = UserBuilder.insert
+
+ public = build(%{"id" => 1}, %{user: user})
+ non_public = build(%{"id" => 2, "to" => []}, %{user: user})
{:ok, public} = ActivityPub.insert(public)
{:ok, non_public} = ActivityPub.insert(non_public)