moved ScheduledActivity to Oban Periodic jobs

This commit is contained in:
Maksim Pechnikov 2019-11-27 09:26:37 +03:00
commit 6f202a401b
6 changed files with 40 additions and 64 deletions

View file

@ -8,6 +8,8 @@ defmodule Pleroma.ScheduledActivityTest do
alias Pleroma.ScheduledActivity
import Pleroma.Factory
clear_config([ScheduledActivity, :enabled])
setup context do
DataCase.ensure_local_uploader(context)
end
@ -61,4 +63,30 @@ defmodule Pleroma.ScheduledActivityTest do
assert changeset.errors == [scheduled_at: {"must be at least 5 minutes from now", []}]
end
end
test "creates a status from the scheduled activity" do
Pleroma.Config.put([ScheduledActivity, :enabled], true)
user = insert(:user)
naive_datetime =
NaiveDateTime.add(
NaiveDateTime.utc_now(),
-:timer.minutes(2),
:millisecond
)
scheduled_activity =
insert(
:scheduled_activity,
scheduled_at: naive_datetime,
user: user,
params: %{status: "hi"}
)
Pleroma.Workers.Cron.ScheduledActivityWorker.perform(:opts, :pid)
refute Repo.get(ScheduledActivity, scheduled_activity.id)
activity = Repo.all(Pleroma.Activity) |> Enum.find(&(&1.actor == user.ap_id))
assert Pleroma.Object.normalize(activity).data["content"] == "hi"
end
end