TwitterAPI: test pending approval user email
authorAlex Gleason <alex@alexgleason.me>
Mon, 12 Oct 2020 20:24:53 +0000 (15:24 -0500)
committerAlex Gleason <alex@alexgleason.me>
Mon, 12 Oct 2020 20:25:14 +0000 (15:25 -0500)
test/web/twitter_api/twitter_api_test.exs

index 20a45cb6f94d74caa2f65c6333844576e512a7ff..4a418dee306bc3b20505a4f5a9f8ec86fbe6be5f 100644 (file)
@@ -80,13 +80,9 @@ defmodule Pleroma.Web.TwitterAPI.TwitterAPITest do
   end
 
   test "it sends an admin email if :account_approval_required is specified in instance config" do
-    admin = insert(:user, is_admin: true)
-    setting = Pleroma.Config.get([:instance, :account_approval_required])
+    clear_config([:instance, :account_approval_required], true)
 
-    unless setting do
-      Pleroma.Config.put([:instance, :account_approval_required], true)
-      on_exit(fn -> Pleroma.Config.put([:instance, :account_approval_required], setting) end)
-    end
+    admin = insert(:user, is_admin: true)
 
     data = %{
       :username => "lain",
@@ -103,15 +99,24 @@ defmodule Pleroma.Web.TwitterAPI.TwitterAPITest do
 
     assert user.approval_pending
 
-    email = Pleroma.Emails.AdminEmail.new_unapproved_registration(admin, user)
+    user_email = Pleroma.Emails.UserEmail.approval_pending_email(user)
+    admin_email = Pleroma.Emails.AdminEmail.new_unapproved_registration(admin, user)
 
     notify_email = Pleroma.Config.get([:instance, :notify_email])
     instance_name = Pleroma.Config.get([:instance, :name])
 
+    # User approval email
+    Swoosh.TestAssertions.assert_email_sent(
+      from: {instance_name, notify_email},
+      to: {user.name, user.email},
+      html_body: user_email.html_body
+    )
+
+    # Admin email
     Swoosh.TestAssertions.assert_email_sent(
       from: {instance_name, notify_email},
       to: {admin.name, admin.email},
-      html_body: email.html_body
+      html_body: admin_email.html_body
     )
   end