diff options
author | Roman Chvanikov <chvanikoff@pm.me> | 2020-05-13 19:56:40 +0300 |
---|---|---|
committer | Roman Chvanikov <chvanikoff@pm.me> | 2020-05-13 19:56:40 +0300 |
commit | 8a383707ae143ba47fa1ba68da20bc6bec425126 (patch) | |
tree | f05d4fd3ea7b52de7a37a2e625de18ba6af14b90 /test/tasks/user_test.exs | |
parent | f3f8ed9e19f1ab8863141ba8b31773c54f4771fb (diff) | |
parent | da550be066a15108ceef7874c3b2549c049a7f88 (diff) | |
download | pleroma-8a383707ae143ba47fa1ba68da20bc6bec425126.tar.gz pleroma-8a383707ae143ba47fa1ba68da20bc6bec425126.zip |
Merge develop
Diffstat (limited to 'test/tasks/user_test.exs')
-rw-r--r-- | test/tasks/user_test.exs | 25 |
1 files changed, 25 insertions, 0 deletions
diff --git a/test/tasks/user_test.exs b/test/tasks/user_test.exs index e0fee7290..4aa873f0b 100644 --- a/test/tasks/user_test.exs +++ b/test/tasks/user_test.exs @@ -3,9 +3,12 @@ # SPDX-License-Identifier: AGPL-3.0-only defmodule Mix.Tasks.Pleroma.UserTest do + alias Pleroma.Activity + alias Pleroma.Object alias Pleroma.Repo alias Pleroma.Tests.ObanHelpers alias Pleroma.User + alias Pleroma.Web.CommonAPI alias Pleroma.Web.OAuth.Authorization alias Pleroma.Web.OAuth.Token @@ -103,6 +106,28 @@ defmodule Mix.Tasks.Pleroma.UserTest do end end + test "a remote user's create activity is deleted when the object has been pruned" do + user = insert(:user) + + {:ok, post} = CommonAPI.post(user, %{status: "uguu"}) + object = Object.normalize(post) + Object.prune(object) + + with_mock Pleroma.Web.Federator, + publish: fn _ -> nil end do + Mix.Tasks.Pleroma.User.run(["rm", user.nickname]) + ObanHelpers.perform_all() + + assert_received {:mix_shell, :info, [message]} + assert message =~ " deleted" + assert %{deactivated: true} = User.get_by_nickname(user.nickname) + + assert called(Pleroma.Web.Federator.publish(:_)) + end + + refute Activity.get_by_id(post.id) + end + test "no user to delete" do Mix.Tasks.Pleroma.User.run(["rm", "nonexistent"]) |