aboutsummaryrefslogtreecommitdiff
path: root/test
diff options
context:
space:
mode:
Diffstat (limited to 'test')
-rw-r--r--test/workers/purge_expired_activity_test.exs21
1 files changed, 21 insertions, 0 deletions
diff --git a/test/workers/purge_expired_activity_test.exs b/test/workers/purge_expired_activity_test.exs
index 8b5dc9fd2..736d7d567 100644
--- a/test/workers/purge_expired_activity_test.exs
+++ b/test/workers/purge_expired_activity_test.exs
@@ -44,4 +44,25 @@ defmodule Pleroma.Workers.PurgeExpiredActivityTest do
assert %Oban.Job{} = Pleroma.Workers.PurgeExpiredActivity.get_expiration(activity.id)
end
+
+ test "don't delete pinned posts, schedule deletion on next day" do
+ activity = insert(:note_activity)
+
+ assert {:ok, _} =
+ PurgeExpiredActivity.enqueue(%{
+ activity_id: activity.id,
+ expires_at: DateTime.utc_now(),
+ validate: false
+ })
+
+ user = Pleroma.User.get_by_ap_id(activity.actor)
+ {:ok, activity} = Pleroma.Web.CommonAPI.pin(activity.id, user)
+
+ assert %{success: 1, failure: 0} ==
+ Oban.drain_queue(queue: :activity_expiration, with_scheduled: true)
+
+ job = Pleroma.Workers.PurgeExpiredActivity.get_expiration(activity.id)
+
+ assert DateTime.diff(job.scheduled_at, DateTime.add(DateTime.utc_now(), 24 * 3600)) in [0, 1]
+ end
end