summaryrefslogtreecommitdiff
path: root/test/web/activity_pub
diff options
context:
space:
mode:
Diffstat (limited to 'test/web/activity_pub')
-rw-r--r--test/web/activity_pub/activity_pub_test.exs27
-rw-r--r--test/web/activity_pub/transmogrifier_test.exs10
2 files changed, 32 insertions, 5 deletions
diff --git a/test/web/activity_pub/activity_pub_test.exs b/test/web/activity_pub/activity_pub_test.exs
index cf25abfc1..6887e8871 100644
--- a/test/web/activity_pub/activity_pub_test.exs
+++ b/test/web/activity_pub/activity_pub_test.exs
@@ -40,12 +40,31 @@ defmodule Pleroma.Web.ActivityPub.ActivityPubTest do
data = %{
"ok" => true,
- "id" => given_id
+ "id" => given_id,
+ "context" => "blabla"
}
{:ok, %Activity{} = activity} = ActivityPub.insert(data)
assert activity.data["ok"] == data["ok"]
assert activity.data["id"] == given_id
+ assert activity.data["context"] == "blabla"
+ assert activity.data["context_id"]
+ end
+
+ test "adds a context when none is there" do
+ data = %{
+ "id" => "some_id",
+ "object" => %{
+ "id" => "object_id"
+ }
+ }
+
+ {:ok, %Activity{} = activity} = ActivityPub.insert(data)
+
+ assert is_binary(activity.data["context"])
+ assert is_binary(activity.data["object"]["context"])
+ assert activity.data["context_id"]
+ assert activity.data["object"]["context_id"]
end
test "adds an id to a given object if it lacks one and is a note and inserts it to the object database" do
@@ -64,16 +83,18 @@ defmodule Pleroma.Web.ActivityPub.ActivityPubTest do
describe "create activities" do
test "removes doubled 'to' recipients" do
+ user = insert(:user)
+
{:ok, activity} =
ActivityPub.create(%{
to: ["user1", "user1", "user2"],
- actor: %User{ap_id: "1"},
+ actor: user,
context: "",
object: %{}
})
assert activity.data["to"] == ["user1", "user2"]
- assert activity.actor == "1"
+ assert activity.actor == user.ap_id
assert activity.recipients == ["user1", "user2"]
end
end
diff --git a/test/web/activity_pub/transmogrifier_test.exs b/test/web/activity_pub/transmogrifier_test.exs
index 060ebe9f1..eb093262f 100644
--- a/test/web/activity_pub/transmogrifier_test.exs
+++ b/test/web/activity_pub/transmogrifier_test.exs
@@ -89,6 +89,10 @@ defmodule Pleroma.Web.ActivityPub.TransmogrifierTest do
"tag:mastodon.example.org,2018-02-12:objectId=20:objectType=Conversation"
assert object["sensitive"] == true
+
+ user = User.get_by_ap_id(object["actor"])
+
+ assert user.info["note_count"] == 1
end
test "it works for incoming notices with hashtags" do
@@ -102,7 +106,8 @@ defmodule Pleroma.Web.ActivityPub.TransmogrifierTest do
user = insert(:user)
data =
- File.read!("test/fixtures/mastodon-follow-activity.json") |> Poison.decode!()
+ File.read!("test/fixtures/mastodon-follow-activity.json")
+ |> Poison.decode!()
|> Map.put("object", user.ap_id)
{:ok, %Activity{data: data, local: false}} = Transmogrifier.handle_incoming(data)
@@ -118,7 +123,8 @@ defmodule Pleroma.Web.ActivityPub.TransmogrifierTest do
{:ok, activity} = CommonAPI.post(user, %{"status" => "hello"})
data =
- File.read!("test/fixtures/mastodon-like.json") |> Poison.decode!()
+ File.read!("test/fixtures/mastodon-like.json")
+ |> Poison.decode!()
|> Map.put("object", activity.data["object"]["id"])
{:ok, %Activity{data: data, local: false}} = Transmogrifier.handle_incoming(data)