diff options
author | Roman Chvanikov <chvanikoff@gmail.com> | 2019-06-04 02:48:21 +0300 |
---|---|---|
committer | Roman Chvanikov <chvanikoff@gmail.com> | 2019-06-04 02:48:21 +0300 |
commit | 3e1761058711b12fa995f2b43117fb90ca40c9ad (patch) | |
tree | 5c1a84023e26d58570e6e6f90830ac13df6862d0 /test/mix | |
parent | 6ef145b4fc3f2ddb5865e84039c3b56656529711 (diff) | |
download | pleroma-3e1761058711b12fa995f2b43117fb90ca40c9ad.tar.gz |
Add task to test emails
Diffstat (limited to 'test/mix')
-rw-r--r-- | test/mix/tasks/pleroma.digest_test.exs | 42 |
1 files changed, 42 insertions, 0 deletions
diff --git a/test/mix/tasks/pleroma.digest_test.exs b/test/mix/tasks/pleroma.digest_test.exs new file mode 100644 index 000000000..1a54ac35b --- /dev/null +++ b/test/mix/tasks/pleroma.digest_test.exs @@ -0,0 +1,42 @@ +defmodule Mix.Tasks.Pleroma.DigestTest do + use Pleroma.DataCase + + import Pleroma.Factory + import Swoosh.TestAssertions + + alias Pleroma.Web.CommonAPI + + setup_all do + Mix.shell(Mix.Shell.Process) + + on_exit(fn -> + Mix.shell(Mix.Shell.IO) + end) + + :ok + end + + describe "pleroma.digest test" do + test "Sends digest to the given user" do + user1 = insert(:user) + user2 = insert(:user) + + Enum.each(0..10, fn i -> + {:ok, _activity} = + CommonAPI.post(user1, %{ + "status" => "hey ##{i} @#{user2.nickname}!" + }) + end) + + Mix.Tasks.Pleroma.Digest.run(["test", user2.nickname]) + + assert_email_sent( + to: {user2.name, user2.email}, + html_body: ~r/new mentions:/i + ) + + assert_received {:mix_shell, :info, [message]} + assert message =~ "Digest email have been sent" + end + end +end |