X-Git-Url: http://git.squeep.com/?a=blobdiff_plain;f=test%2Fweb%2Fostatus%2Fincoming_documents%2Fdelete_handling_test.exs;h=ca6e6133952b36d1ba0c3f366d05487733087bf2;hb=1557b99beb3b406572ef2d3baaabed1c9baeca1c;hp=8cd6e295e9807b0c33cb11cd35e5944c0c842a2b;hpb=f226f46a097b6b87a87ce1ead07383e8f83ad8ea;p=akkoma diff --git a/test/web/ostatus/incoming_documents/delete_handling_test.exs b/test/web/ostatus/incoming_documents/delete_handling_test.exs index 8cd6e295e..ca6e61339 100644 --- a/test/web/ostatus/incoming_documents/delete_handling_test.exs +++ b/test/web/ostatus/incoming_documents/delete_handling_test.exs @@ -2,22 +2,42 @@ defmodule Pleroma.Web.OStatus.DeleteHandlingTest do use Pleroma.DataCase import Pleroma.Factory - alias Pleroma.{Repo, Activity, Object} + import Tesla.Mock + + alias Pleroma.Activity + alias Pleroma.Object alias Pleroma.Web.OStatus + setup do + mock(fn env -> apply(HttpRequestMock, :request, [env]) end) + :ok + end + describe "deletions" do test "it removes the mentioned activity" do note = insert(:note_activity) second_note = insert(:note_activity) + user = insert(:user) + object = Object.get_by_ap_id(note.data["object"]["id"]) - incoming = File.read!("test/fixtures/delete.xml") - |> String.replace("tag:mastodon.sdf.org,2017-06-10:objectId=310513:objectType=Status", note.data["object"]["id"]) - {:ok, []} = OStatus.handle_incoming(incoming) + {:ok, like, _object} = Pleroma.Web.ActivityPub.ActivityPub.like(user, object) - refute Repo.get(Activity, note.id) - refute Object.get_by_ap_id(note.data["object"]["id"]) - assert Repo.get(Activity, second_note.id) + incoming = + File.read!("test/fixtures/delete.xml") + |> String.replace( + "tag:mastodon.sdf.org,2017-06-10:objectId=310513:objectType=Status", + note.data["object"]["id"] + ) + + {:ok, [delete]} = OStatus.handle_incoming(incoming) + + refute Activity.get_by_id(note.id) + refute Activity.get_by_id(like.id) + assert Object.get_by_ap_id(note.data["object"]["id"]).data["type"] == "Tombstone" + assert Activity.get_by_id(second_note.id) assert Object.get_by_ap_id(second_note.data["object"]["id"]) + + assert delete.data["type"] == "Delete" end end end