diff options
author | William Pitcock <nenolod@dereferenced.org> | 2018-11-17 21:22:30 +0000 |
---|---|---|
committer | William Pitcock <nenolod@dereferenced.org> | 2018-11-17 21:22:57 +0000 |
commit | dfcfb184b10428af8d37492e64f271c0275fc2c9 (patch) | |
tree | d5920e48f086e916eb3d17bee22dafd38f204e9b /test | |
parent | b1a6e8d80d47efdea5110e9d86e080a16b5aeaa8 (diff) | |
download | pleroma-dfcfb184b10428af8d37492e64f271c0275fc2c9.tar.gz |
activitypub: transmogrifier: make deletes secure
Diffstat (limited to 'test')
-rw-r--r-- | test/web/activity_pub/transmogrifier_test.exs | 20 |
1 files changed, 20 insertions, 0 deletions
diff --git a/test/web/activity_pub/transmogrifier_test.exs b/test/web/activity_pub/transmogrifier_test.exs index 9174d9b76..829da0a65 100644 --- a/test/web/activity_pub/transmogrifier_test.exs +++ b/test/web/activity_pub/transmogrifier_test.exs @@ -361,6 +361,26 @@ defmodule Pleroma.Web.ActivityPub.TransmogrifierTest do refute Repo.get(Activity, activity.id) end + test "it fails for incoming deletes with spoofed origin" do + activity = insert(:note_activity) + + data = + File.read!("test/fixtures/mastodon-delete.json") + |> Poison.decode!() + + object = + data["object"] + |> Map.put("id", activity.data["object"]["id"]) + + data = + data + |> Map.put("object", object) + + :error = Transmogrifier.handle_incoming(data) + + assert Repo.get(Activity, activity.id) + end + test "it works for incoming unannounces with an existing notice" do user = insert(:user) {:ok, activity} = CommonAPI.post(user, %{"status" => "hey"}) |