diff options
| author | rinpatch <rinpatch@sdf.org> | 2020-05-11 13:31:11 +0000 |
|---|---|---|
| committer | rinpatch <rinpatch@sdf.org> | 2020-05-11 13:31:11 +0000 |
| commit | 79cd723a1eccd83aecd27cbc69ef970dd8067b3f (patch) | |
| tree | b6190e2bd0b02483d43438cb337f5df111ee1392 /test/web/activity_pub/side_effects_test.exs | |
| parent | 84bb116ae3854c17b85a780fe6dae03c0bd8eaa7 (diff) | |
| parent | 5367a00257c6f862a4a8080e0176f676ce491e4d (diff) | |
| download | pleroma-79cd723a1eccd83aecd27cbc69ef970dd8067b3f.tar.gz pleroma-79cd723a1eccd83aecd27cbc69ef970dd8067b3f.zip | |
Merge branch '1204-object-pruning-deletion' into 'develop'
Deletion: Handle the case of pruned objects.
Closes #1204
See merge request pleroma/pleroma!2507
Diffstat (limited to 'test/web/activity_pub/side_effects_test.exs')
| -rw-r--r-- | test/web/activity_pub/side_effects_test.exs | 29 |
1 files changed, 29 insertions, 0 deletions
diff --git a/test/web/activity_pub/side_effects_test.exs b/test/web/activity_pub/side_effects_test.exs index b29a7a7be..aa3e40be1 100644 --- a/test/web/activity_pub/side_effects_test.exs +++ b/test/web/activity_pub/side_effects_test.exs @@ -64,6 +64,35 @@ defmodule Pleroma.Web.ActivityPub.SideEffectsTest do assert object.data["repliesCount"] == 0 end + test "it handles object deletions when the object itself has been pruned", %{ + delete: delete, + post: post, + object: object, + user: user, + op: op + } do + with_mock Pleroma.Web.ActivityPub.ActivityPub, [:passthrough], + stream_out: fn _ -> nil end, + stream_out_participations: fn _, _ -> nil end do + {:ok, delete, _} = SideEffects.handle(delete) + user = User.get_cached_by_ap_id(object.data["actor"]) + + assert called(Pleroma.Web.ActivityPub.ActivityPub.stream_out(delete)) + assert called(Pleroma.Web.ActivityPub.ActivityPub.stream_out_participations(object, user)) + end + + object = Object.get_by_id(object.id) + assert object.data["type"] == "Tombstone" + refute Activity.get_by_id(post.id) + + user = User.get_by_id(user.id) + assert user.note_count == 0 + + object = Object.normalize(op.data["object"], false) + + assert object.data["repliesCount"] == 0 + end + test "it handles user deletions", %{delete_user: delete, user: user} do {:ok, _delete, _} = SideEffects.handle(delete) ObanHelpers.perform_all() |
