aboutsummaryrefslogtreecommitdiff
path: root/test/tasks/user_test.exs
diff options
context:
space:
mode:
authorIvan Tashkinov <ivantashkinov@gmail.com>2020-05-13 12:42:36 +0300
committerIvan Tashkinov <ivantashkinov@gmail.com>2020-05-13 12:42:36 +0300
commitfd2fb2bb2e2292997fbe6f70c4d12b50c56cfab9 (patch)
tree12f2ac82ed24394fb52b5d0664583dc668814421 /test/tasks/user_test.exs
parentbfb48e3db6009c31e52cfe5ac4828a6143d7e549 (diff)
parent156c8a508846bd6d4e55f666c4ecc6f0129ac5fc (diff)
downloadpleroma-fd2fb2bb2e2292997fbe6f70c4d12b50c56cfab9.tar.gz
Merge remote-tracking branch 'remotes/origin/develop' into restricted-relations-embedding
# Conflicts: # lib/pleroma/web/mastodon_api/controllers/status_controller.ex # lib/pleroma/web/mastodon_api/controllers/timeline_controller.ex # test/web/mastodon_api/controllers/timeline_controller_test.exs # test/web/mastodon_api/views/status_view_test.exs
Diffstat (limited to 'test/tasks/user_test.exs')
-rw-r--r--test/tasks/user_test.exs25
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"])