diff options
author | Mark Felder <feld@feld.me> | 2024-08-23 13:52:19 -0400 |
---|---|---|
committer | Mark Felder <feld@feld.me> | 2024-08-29 11:59:42 -0400 |
commit | ceffb8a8918b83d482e9c1da64fec22b428a61f3 (patch) | |
tree | 8c8ffe225dcc33caf1048923f8a849192af14875 /test | |
parent | 1e8b79956e0c706650358e8b98c8e04e4fcf05b9 (diff) | |
download | pleroma-ceffb8a8918b83d482e9c1da64fec22b428a61f3.tar.gz pleroma-ceffb8a8918b83d482e9c1da64fec22b428a61f3.zip |
Drop incoming Delete activities from unknown actors
Diffstat (limited to 'test')
-rw-r--r-- | test/pleroma/workers/receiver_worker_test.exs | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/test/pleroma/workers/receiver_worker_test.exs b/test/pleroma/workers/receiver_worker_test.exs index 33be91085..91fbb1fe8 100644 --- a/test/pleroma/workers/receiver_worker_test.exs +++ b/test/pleroma/workers/receiver_worker_test.exs @@ -245,4 +245,26 @@ defmodule Pleroma.Workers.ReceiverWorkerTest do assert {:ok, %Pleroma.Activity{}} = ReceiverWorker.perform(oban_job) end + + # When activity is delivered to the inbox and we cannot immediately verify signature + # we capture all the params and process it later in the Oban job. + # This requires we replicate the same scenario by including additional fields in the params + test "Deletes cancelled for an unknown actor" do + params = %{ + "type" => "Delete", + "actor" => "https://unknown.mastodon.instance/users/somebody" + } + + assert {:cancel, "Delete from unknown actor"} = + ReceiverWorker.perform(%Oban.Job{ + args: %{ + "op" => "incoming_ap_doc", + "method" => :post, + "req_headers" => [], + "request_path" => "/inbox", + "query_string" => "", + "params" => params + } + }) + end end |