summaryrefslogtreecommitdiff
path: root/test/support
diff options
context:
space:
mode:
Diffstat (limited to 'test/support')
-rw-r--r--test/support/builders/activity_builder.ex8
-rw-r--r--test/support/builders/user_builder.ex4
-rw-r--r--test/support/factory.ex3
-rw-r--r--test/support/httpoison_mock.ex70
4 files changed, 80 insertions, 5 deletions
diff --git a/test/support/builders/activity_builder.ex b/test/support/builders/activity_builder.ex
index 7ce611f8f..0ebf633b3 100644
--- a/test/support/builders/activity_builder.ex
+++ b/test/support/builders/activity_builder.ex
@@ -8,9 +8,11 @@ defmodule Pleroma.Builders.ActivityBuilder do
"id" => Pleroma.Web.ActivityPub.Utils.generate_object_id,
"actor" => user.ap_id,
"to" => ["https://www.w3.org/ns/activitystreams#Public"],
+ "type" => "Create",
"object" => %{
"type" => "Note",
- "content" => "test"
+ "content" => "test",
+ "to" => ["https://www.w3.org/ns/activitystreams#Public"],
}
}
Map.merge(activity, data)
@@ -23,7 +25,7 @@ defmodule Pleroma.Builders.ActivityBuilder do
def insert_list(times, data \\ %{}, opts \\ %{}) do
Enum.map(1..times, fn (n) ->
- {:ok, activity} = insert(data)
+ {:ok, activity} = insert(data, opts)
activity
end)
end
@@ -32,7 +34,7 @@ defmodule Pleroma.Builders.ActivityBuilder do
user = Pleroma.Factory.insert(:user)
public = build(%{"id" => 1}, %{user: user})
- non_public = build(%{"id" => 2, "to" => []}, %{user: user})
+ non_public = build(%{"id" => 2, "to" => [user.follower_address]}, %{user: user})
{:ok, public} = ActivityPub.insert(public)
{:ok, non_public} = ActivityPub.insert(non_public)
diff --git a/test/support/builders/user_builder.ex b/test/support/builders/user_builder.ex
index 710a1b87c..1e1e80ac9 100644
--- a/test/support/builders/user_builder.ex
+++ b/test/support/builders/user_builder.ex
@@ -14,6 +14,8 @@ defmodule Pleroma.Builders.UserBuilder do
end
def insert(data \\ %{}) do
- Repo.insert(build(data))
+ {:ok, user} = Repo.insert(build(data))
+ User.invalidate_cache(user)
+ {:ok, user}
end
end
diff --git a/test/support/factory.ex b/test/support/factory.ex
index 7f378915e..1445fe828 100644
--- a/test/support/factory.ex
+++ b/test/support/factory.ex
@@ -52,7 +52,8 @@ defmodule Pleroma.Factory do
%Pleroma.Activity{
data: data,
- actor: data["actor"]
+ actor: data["actor"],
+ recipients: data["to"]
}
end
diff --git a/test/support/httpoison_mock.ex b/test/support/httpoison_mock.ex
index 21607ba95..ad9be9aef 100644
--- a/test/support/httpoison_mock.ex
+++ b/test/support/httpoison_mock.ex
@@ -80,6 +80,13 @@ defmodule HTTPoisonMock do
}}
end
+ def get("https://shitposter.club/.well-known/webfinger?resource=https://shitposter.club/user/5381", [Accept: "application/xrd+xml"], []) do
+ {:ok, %Response{
+ status_code: 200,
+ body: File.read!("test/fixtures/httpoison_mock/spc_5381_xrd.xml")
+ }}
+ end
+
def get("http://gs.example.org/.well-known/webfinger", [Accept: "application/xrd+xml"], [params: [resource: "http://gs.example.org:4040/index.php/user/1"], follow_redirect: true]) do
{:ok, %Response{
status_code: 200,
@@ -122,6 +129,13 @@ defmodule HTTPoisonMock do
}}
end
+ def get("https://shitposter.club/api/statuses/user_timeline/5381.atom", _body, _headers) do
+ {:ok, %Response{
+ status_code: 200,
+ body: File.read!("test/fixtures/httpoison_mock/spc_5381.atom")
+ }}
+ end
+
def get("https://social.heldscal.la/api/statuses/user_timeline/23211.atom", _body, _headers) do
{:ok, %Response{
status_code: 200,
@@ -366,6 +380,62 @@ defmodule HTTPoisonMock do
}}
end
+ def get("http://mastodon.example.org/users/admin", ["Accept": "application/activity+json"], _) do
+ {:ok, %Response{
+ status_code: 200,
+ body: File.read!("test/fixtures/httpoison_mock/admin@mastdon.example.org.json")
+ }}
+ end
+
+ def get("https://masto.quad.moe/users/_HellPie", ["Accept": "application/activity+json"], _) do
+ {:ok, %Response{
+ status_code: 200,
+ body: File.read!("test/fixtures/httpoison_mock/hellpie.json")
+ }}
+ end
+
+ def get("https://niu.moe/users/rye", ["Accept": "application/activity+json"], _) do
+ {:ok, %Response{
+ status_code: 200,
+ body: File.read!("test/fixtures/httpoison_mock/rye.json")
+ }}
+ end
+
+ def get("https://mstdn.io/users/mayuutann", ["Accept": "application/activity+json"], _) do
+ {:ok, %Response{
+ status_code: 200,
+ body: File.read!("test/fixtures/httpoison_mock/mayumayu.json")
+ }}
+ end
+
+ def get("http://mastodon.example.org/@admin/99541947525187367", ["Accept": "application/activity+json"], _) do
+ {:ok, %Response{
+ status_code: 200,
+ body: File.read!("test/fixtures/mastodon-note-object.json")
+ }}
+ end
+
+ def get("https://mstdn.io/users/mayuutann/statuses/99568293732299394", ["Accept": "application/activity+json"], _) do
+ {:ok, %Response{
+ status_code: 200,
+ body: File.read!("test/fixtures/httpoison_mock/mayumayupost.json")
+ }}
+ end
+
+ def get("https://shitposter.club/notice/7369654", _, _) do
+ {:ok, %Response{
+ status_code: 200,
+ body: File.read!("test/fixtures/httpoison_mock/7369654.html")
+ }}
+ end
+
+ def get("https://shitposter.club/api/statuses/show/7369654.atom", _body, _headers) do
+ {:ok, %Response{
+ status_code: 200,
+ body: File.read!("test/fixtures/httpoison_mock/7369654.atom")
+ }}
+ end
+
def get(url, body, headers) do
{:error, "Not implemented the mock response for get #{inspect(url)}, #{inspect(body)}, #{inspect(headers)}"}
end