1 defmodule Mix.Tasks.Pleroma.DigestTest do
5 import Swoosh.TestAssertions
7 alias Pleroma.Tests.ObanHelpers
8 alias Pleroma.Web.CommonAPI
11 Mix.shell(Mix.Shell.Process)
14 Mix.shell(Mix.Shell.IO)
20 setup do: clear_config([Pleroma.Emails.Mailer, :enabled], true)
22 describe "pleroma.digest test" do
23 test "Sends digest to the given user" do
27 Enum.each(0..10, fn i ->
29 CommonAPI.post(user1, %{
30 status: "hey ##{i} @#{user2.nickname}!"
36 NaiveDateTime.truncate(NaiveDateTime.utc_now(), :second),
41 {:ok, yesterday_date} = Timex.format(yesterday, "%F", :strftime)
43 :ok = Mix.Tasks.Pleroma.Digest.run(["test", user2.nickname, yesterday_date])
45 ObanHelpers.perform_all()
47 assert_receive {:mix_shell, :info, [message]}
48 assert message =~ "Digest email have been sent"
51 to: {user2.name, user2.email},
52 html_body: ~r/here is what you've missed!/i