Merge branch 'reserve-user-names' into 'develop'
[akkoma] / test / web / ostatus / incoming_documents / delete_handling_test.exs
1 defmodule Pleroma.Web.OStatus.DeleteHandlingTest do
2 use Pleroma.DataCase
3
4 import Pleroma.Factory
5 alias Pleroma.{Repo, Activity, Object}
6 alias Pleroma.Web.OStatus
7
8 describe "deletions" do
9 test "it removes the mentioned activity" do
10 note = insert(:note_activity)
11 second_note = insert(:note_activity)
12 user = insert(:user)
13 object = Object.get_by_ap_id(note.data["object"]["id"])
14
15 {:ok, like, _object} = Pleroma.Web.ActivityPub.ActivityPub.like(user, object)
16
17 incoming =
18 File.read!("test/fixtures/delete.xml")
19 |> String.replace(
20 "tag:mastodon.sdf.org,2017-06-10:objectId=310513:objectType=Status",
21 note.data["object"]["id"]
22 )
23
24 {:ok, [delete]} = OStatus.handle_incoming(incoming)
25
26 refute Repo.get(Activity, note.id)
27 refute Repo.get(Activity, like.id)
28 refute Object.get_by_ap_id(note.data["object"]["id"])
29 assert Repo.get(Activity, second_note.id)
30 assert Object.get_by_ap_id(second_note.data["object"]["id"])
31
32 assert delete.data["type"] == "Delete"
33 end
34 end
35 end