3dafe05fefcea09fc3fd3795b47711ad1ba2a1f5
[akkoma] / test / mix / tasks / pleroma.digest_test.exs
1 defmodule Mix.Tasks.Pleroma.DigestTest do
2 use Pleroma.DataCase
3
4 import Pleroma.Factory
5 import Swoosh.TestAssertions
6
7 alias Pleroma.Web.CommonAPI
8
9 setup_all do
10 Mix.shell(Mix.Shell.Process)
11
12 on_exit(fn ->
13 Mix.shell(Mix.Shell.IO)
14 end)
15
16 :ok
17 end
18
19 describe "pleroma.digest test" do
20 test "Sends digest to the given user" do
21 user1 = insert(:user)
22 user2 = insert(:user)
23
24 Enum.each(0..10, fn i ->
25 {:ok, _activity} =
26 CommonAPI.post(user1, %{
27 "status" => "hey ##{i} @#{user2.nickname}!"
28 })
29 end)
30
31 Mix.Tasks.Pleroma.Digest.run(["test", user2.nickname])
32
33 assert_received {:mix_shell, :info, [message]}
34 assert message =~ "Digest email have been sent"
35
36 assert_email_sent(
37 to: {user2.name, user2.email},
38 html_body: ~r/new mentions:/i
39 )
40 end
41 end
42 end