diff options
Diffstat (limited to 'test/web/twitter_api')
| -rw-r--r-- | test/web/twitter_api/twitter_api_test.exs | 38 | 
1 files changed, 37 insertions, 1 deletions
diff --git a/test/web/twitter_api/twitter_api_test.exs b/test/web/twitter_api/twitter_api_test.exs index 5bb2d8d89..20a45cb6f 100644 --- a/test/web/twitter_api/twitter_api_test.exs +++ b/test/web/twitter_api/twitter_api_test.exs @@ -4,7 +4,7 @@  defmodule Pleroma.Web.TwitterAPI.TwitterAPITest do    use Pleroma.DataCase - +  import Pleroma.Factory    alias Pleroma.Repo    alias Pleroma.Tests.ObanHelpers    alias Pleroma.User @@ -79,6 +79,42 @@ 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]) + +    unless setting do +      Pleroma.Config.put([:instance, :account_approval_required], true) +      on_exit(fn -> Pleroma.Config.put([:instance, :account_approval_required], setting) end) +    end + +    data = %{ +      :username => "lain", +      :email => "lain@wired.jp", +      :fullname => "lain iwakura", +      :bio => "", +      :password => "bear", +      :confirm => "bear", +      :reason => "I love anime" +    } + +    {:ok, user} = TwitterAPI.register_user(data) +    ObanHelpers.perform_all() + +    assert user.approval_pending + +    email = Pleroma.Emails.AdminEmail.new_unapproved_registration(admin, user) + +    notify_email = Pleroma.Config.get([:instance, :notify_email]) +    instance_name = Pleroma.Config.get([:instance, :name]) + +    Swoosh.TestAssertions.assert_email_sent( +      from: {instance_name, notify_email}, +      to: {admin.name, admin.email}, +      html_body: email.html_body +    ) +  end +    test "it registers a new user and parses mentions in the bio" do      data1 = %{        :username => "john",  | 
