diff options
| -rw-r--r-- | lib/pleroma/web/activity_pub/activity_pub.ex | 3 | ||||
| -rw-r--r-- | test/web/activity_pub/activity_pub_test.exs | 21 | 
2 files changed, 23 insertions, 1 deletions
| diff --git a/lib/pleroma/web/activity_pub/activity_pub.ex b/lib/pleroma/web/activity_pub/activity_pub.ex index 783491b67..adb42b9ab 100644 --- a/lib/pleroma/web/activity_pub/activity_pub.ex +++ b/lib/pleroma/web/activity_pub/activity_pub.ex @@ -309,12 +309,13 @@ defmodule Pleroma.Web.ActivityPub.ActivityPub do    def delete(%Object{data: %{"id" => id, "actor" => actor}} = object, local \\ true) do      user = User.get_cached_by_ap_id(actor) +    to = object.data["to"] || [] ++ object.data["cc"] || []      data = %{        "type" => "Delete",        "actor" => actor,        "object" => id, -      "to" => [user.follower_address, "https://www.w3.org/ns/activitystreams#Public"] +      "to" => to      }      with {:ok, _} <- Object.delete(object), diff --git a/test/web/activity_pub/activity_pub_test.exs b/test/web/activity_pub/activity_pub_test.exs index f4029896c..10c5258d0 100644 --- a/test/web/activity_pub/activity_pub_test.exs +++ b/test/web/activity_pub/activity_pub_test.exs @@ -691,6 +691,27 @@ defmodule Pleroma.Web.ActivityPub.ActivityPubTest do        user = Repo.get(User, user.id)        assert user.info.note_count == 10      end + +    test "it creates a delete activity and checks that it is also sent to users mentioned by the deleted object" do +      user = insert(:user) +      note = insert(:note_activity) + +      {:ok, object} = +        Object.get_by_ap_id(note.data["object"]["id"]) +        |> Object.change(%{ +          data: %{ +            "actor" => note.data["object"]["actor"], +            "id" => note.data["object"]["id"], +            "to" => [user.ap_id], +            "type" => "Note" +          } +        }) +        |> Object.update_and_set_cache() + +      {:ok, delete} = ActivityPub.delete(object) + +      assert user.ap_id in delete.data["to"] +    end    end    describe "timeline post-processing" do | 
