summaryrefslogtreecommitdiff
path: root/test/daemons/digest_email_daemon_test.exs
diff options
context:
space:
mode:
authorMaksim Pechnikov <parallel588@gmail.com>2019-09-16 07:34:22 +0300
committerMaksim Pechnikov <parallel588@gmail.com>2019-09-16 07:34:22 +0300
commitd75bc728e7e309174373e234079aa4825c81ab3e (patch)
tree1ac6b44f5758ff028103c37d3712520f45a0695e /test/daemons/digest_email_daemon_test.exs
parent4f548cb2b7b4a16a956a4f4a0ff64d279777925e (diff)
parent2990c0a53b14646eab19b57d068ac8aa7e17ea4e (diff)
downloadpleroma-d75bc728e7e309174373e234079aa4825c81ab3e.tar.gz
pleroma-d75bc728e7e309174373e234079aa4825c81ab3e.zip
Merge branch 'develop' into issue/733
Diffstat (limited to 'test/daemons/digest_email_daemon_test.exs')
-rw-r--r--test/daemons/digest_email_daemon_test.exs35
1 files changed, 35 insertions, 0 deletions
diff --git a/test/daemons/digest_email_daemon_test.exs b/test/daemons/digest_email_daemon_test.exs
new file mode 100644
index 000000000..3168f3b9a
--- /dev/null
+++ b/test/daemons/digest_email_daemon_test.exs
@@ -0,0 +1,35 @@
+# Pleroma: A lightweight social networking server
+# Copyright © 2017-2019 Pleroma Authors <https://pleroma.social/>
+# SPDX-License-Identifier: AGPL-3.0-only
+
+defmodule Pleroma.DigestEmailDaemonTest do
+ use Pleroma.DataCase
+ import Pleroma.Factory
+
+ alias Pleroma.Daemons.DigestEmailDaemon
+ alias Pleroma.Tests.ObanHelpers
+ alias Pleroma.User
+ alias Pleroma.Web.CommonAPI
+
+ test "it sends digest emails" do
+ user = insert(:user)
+
+ date =
+ Timex.now()
+ |> Timex.shift(days: -10)
+ |> Timex.to_naive_datetime()
+
+ user2 = insert(:user, last_digest_emailed_at: date)
+ User.switch_email_notifications(user2, "digest", true)
+ CommonAPI.post(user, %{"status" => "hey @#{user2.nickname}!"})
+
+ DigestEmailDaemon.perform()
+ ObanHelpers.perform_all()
+ # Performing job(s) enqueued at previous step
+ ObanHelpers.perform_all()
+
+ assert_received {:email, email}
+ assert email.to == [{user2.name, user2.email}]
+ assert email.subject == "Your digest from #{Pleroma.Config.get(:instance)[:name]}"
+ end
+end