diff options
author | kaniini <ariadne@dereferenced.org> | 2019-09-30 16:37:45 +0000 |
---|---|---|
committer | kaniini <ariadne@dereferenced.org> | 2019-09-30 16:37:45 +0000 |
commit | 57101955b681b13dfc318d3210a0b59cc377cd8b (patch) | |
tree | 6d021061c9ae7458726af5b5785d9ba69b176962 /test/web | |
parent | 56c91d1323ac354c89aa9fa79df2be0999460e3c (diff) | |
parent | 565b8d02c8c1cfaa1276970a75d336a19147589c (diff) | |
download | pleroma-57101955b681b13dfc318d3210a0b59cc377cd8b.tar.gz |
Merge branch 'cherry-pick-compact-undos' into 'maint/1.1'
Transmogrifier: Handle compact objects in undos.
See merge request pleroma/pleroma!1753
Diffstat (limited to 'test/web')
-rw-r--r-- | test/web/activity_pub/transmogrifier_test.exs | 25 |
1 files changed, 25 insertions, 0 deletions
diff --git a/test/web/activity_pub/transmogrifier_test.exs b/test/web/activity_pub/transmogrifier_test.exs index bebecce8d..1a7626151 100644 --- a/test/web/activity_pub/transmogrifier_test.exs +++ b/test/web/activity_pub/transmogrifier_test.exs @@ -348,6 +348,31 @@ defmodule Pleroma.Web.ActivityPub.TransmogrifierTest do assert data["object"]["id"] == "http://mastodon.example.org/users/admin#likes/2" end + test "it works for incoming unlikes with an existing like activity and a compact object" do + user = insert(:user) + {:ok, activity} = CommonAPI.post(user, %{"status" => "leave a like pls"}) + + like_data = + File.read!("test/fixtures/mastodon-like.json") + |> Poison.decode!() + |> Map.put("object", activity.data["object"]) + + {:ok, %Activity{data: like_data, local: false}} = Transmogrifier.handle_incoming(like_data) + + data = + File.read!("test/fixtures/mastodon-undo-like.json") + |> Poison.decode!() + |> Map.put("object", like_data["id"]) + |> Map.put("actor", like_data["actor"]) + + {:ok, %Activity{data: data, local: false}} = Transmogrifier.handle_incoming(data) + + assert data["actor"] == "http://mastodon.example.org/users/admin" + assert data["type"] == "Undo" + assert data["id"] == "http://mastodon.example.org/users/admin#likes/2/undo" + assert data["object"]["id"] == "http://mastodon.example.org/users/admin#likes/2" + end + test "it works for incoming announces" do data = File.read!("test/fixtures/mastodon-announce.json") |> Poison.decode!() |