diff options
author | rinpatch <rinpatch@sdf.org> | 2020-05-12 16:45:46 +0000 |
---|---|---|
committer | rinpatch <rinpatch@sdf.org> | 2020-05-12 16:45:46 +0000 |
commit | 24c8c13640342ae6d86070dafb041339eee016f3 (patch) | |
tree | c75c810f175a1528700141658b50e7004b194d0c /test | |
parent | 4cc71aad654201e3c3ad483b2be6e1d26a9c6df6 (diff) | |
parent | d0ba1844b031030cde5b5cf4a5714bb6ff483866 (diff) | |
download | pleroma-24c8c13640342ae6d86070dafb041339eee016f3.tar.gz pleroma-24c8c13640342ae6d86070dafb041339eee016f3.zip |
Merge branch '1757-blocks-breaking-on-disabled-outgoing-blocks' into 'develop'
ActivityPub: Fix non-federating blocks.
Closes #1757
See merge request pleroma/pleroma!2514
Diffstat (limited to 'test')
-rw-r--r-- | test/web/activity_pub/activity_pub_test.exs | 32 |
1 files changed, 28 insertions, 4 deletions
diff --git a/test/web/activity_pub/activity_pub_test.exs b/test/web/activity_pub/activity_pub_test.exs index 0739cbfef..59bdd53cd 100644 --- a/test/web/activity_pub/activity_pub_test.exs +++ b/test/web/activity_pub/activity_pub_test.exs @@ -1061,14 +1061,38 @@ defmodule Pleroma.Web.ActivityPub.ActivityPubTest do end test "creates a block activity" do + clear_config([:instance, :federating], true) blocker = insert(:user) blocked = insert(:user) - {:ok, activity} = ActivityPub.block(blocker, blocked) + with_mock Pleroma.Web.Federator, + publish: fn _ -> nil end do + {:ok, activity} = ActivityPub.block(blocker, blocked) - assert activity.data["type"] == "Block" - assert activity.data["actor"] == blocker.ap_id - assert activity.data["object"] == blocked.ap_id + assert activity.data["type"] == "Block" + assert activity.data["actor"] == blocker.ap_id + assert activity.data["object"] == blocked.ap_id + + assert called(Pleroma.Web.Federator.publish(activity)) + end + end + + test "works with outgoing blocks disabled, but doesn't federate" do + clear_config([:instance, :federating], true) + clear_config([:activitypub, :outgoing_blocks], false) + blocker = insert(:user) + blocked = insert(:user) + + with_mock Pleroma.Web.Federator, + publish: fn _ -> nil end do + {:ok, activity} = ActivityPub.block(blocker, blocked) + + assert activity.data["type"] == "Block" + assert activity.data["actor"] == blocker.ap_id + assert activity.data["object"] == blocked.ap_id + + refute called(Pleroma.Web.Federator.publish(:_)) + end end end |