2022-12-01 08:00:53 -07:00
|
|
|
defmodule Pleroma.Activity.PrunerTest do
|
|
|
|
use Pleroma.DataCase, async: true
|
|
|
|
|
|
|
|
alias Pleroma.Activity
|
|
|
|
alias Pleroma.Activity.Pruner
|
|
|
|
|
|
|
|
import Pleroma.Factory
|
|
|
|
|
|
|
|
describe "prune_deletes" do
|
|
|
|
test "it prunes old delete objects" do
|
|
|
|
user = insert(:user)
|
|
|
|
|
|
|
|
new_delete = insert(:delete_activity, type: "Delete", user: user)
|
|
|
|
|
|
|
|
old_delete =
|
|
|
|
insert(:delete_activity,
|
|
|
|
type: "Delete",
|
|
|
|
user: user,
|
|
|
|
inserted_at: DateTime.utc_now() |> DateTime.add(-31 * 24, :hour)
|
|
|
|
)
|
|
|
|
|
|
|
|
Pruner.prune_deletes()
|
|
|
|
assert Activity.get_by_id(new_delete.id)
|
|
|
|
refute Activity.get_by_id(old_delete.id)
|
|
|
|
end
|
|
|
|
end
|
2022-12-03 16:17:43 -07:00
|
|
|
|
|
|
|
describe "prune_stale_follow_requests" do
|
|
|
|
test "it prunes old follow requests" do
|
|
|
|
follower = insert(:user)
|
|
|
|
followee = insert(:user)
|
|
|
|
|
|
|
|
new_follow_request =
|
|
|
|
insert(
|
|
|
|
:follow_activity,
|
|
|
|
follower: follower,
|
|
|
|
followed: followee,
|
|
|
|
state: "reject"
|
|
|
|
)
|
|
|
|
|
|
|
|
old_not_rejected_request =
|
|
|
|
insert(:follow_activity,
|
|
|
|
follower: follower,
|
|
|
|
followed: followee,
|
|
|
|
state: "pending",
|
|
|
|
inserted_at: DateTime.utc_now() |> DateTime.add(-31 * 24, :hour)
|
|
|
|
)
|
|
|
|
|
|
|
|
old_follow_request =
|
|
|
|
insert(:follow_activity,
|
|
|
|
follower: follower,
|
|
|
|
followed: followee,
|
|
|
|
inserted_at: DateTime.utc_now() |> DateTime.add(-31 * 24, :hour),
|
|
|
|
state: "reject"
|
|
|
|
)
|
|
|
|
|
|
|
|
Pruner.prune_stale_follow_requests()
|
|
|
|
assert Activity.get_by_id(new_follow_request.id)
|
|
|
|
assert Activity.get_by_id(old_not_rejected_request.id)
|
|
|
|
refute Activity.get_by_id(old_follow_request.id)
|
|
|
|
end
|
|
|
|
end
|
2022-12-01 08:00:53 -07:00
|
|
|
end
|