diff options
| author | Maxim Filippov <colixer@gmail.com> | 2019-11-19 20:14:02 +0900 | 
|---|---|---|
| committer | Maxim Filippov <colixer@gmail.com> | 2019-11-19 20:14:02 +0900 | 
| commit | 46eb160135cf408fee87bb76fc46acfc51af901d (patch) | |
| tree | d55238f7a96469aa41bff52a7002221a2bec28b5 /test/web/admin_api | |
| parent | 09b4f7269e5307f29fc8ca7b548e93cd93836dc5 (diff) | |
| download | pleroma-46eb160135cf408fee87bb76fc46acfc51af901d.tar.gz pleroma-46eb160135cf408fee87bb76fc46acfc51af901d.zip | |
AdminAPI: Confirm user account, resend confirmation email
Diffstat (limited to 'test/web/admin_api')
| -rw-r--r-- | test/web/admin_api/admin_api_controller_test.exs | 62 | 
1 files changed, 62 insertions, 0 deletions
| diff --git a/test/web/admin_api/admin_api_controller_test.exs b/test/web/admin_api/admin_api_controller_test.exs index 3a4c4d65c..8fabfd963 100644 --- a/test/web/admin_api/admin_api_controller_test.exs +++ b/test/web/admin_api/admin_api_controller_test.exs @@ -2839,6 +2839,68 @@ defmodule Pleroma.Web.AdminAPI.AdminAPIControllerTest do                 "@#{admin.nickname} unfollowed relay: http://mastodon.example.org/users/admin"      end    end + +  describe "PATCH /confirm_email" do +    setup %{conn: conn} do +      admin = insert(:user, is_admin: true) + +      %{conn: assign(conn, :user, admin), admin: admin} +    end + +    test "it confirms emails of two users", %{admin: admin} do +      [first_user, second_user] = insert_pair(:user, confirmation_pending: true) + +      assert first_user.confirmation_pending == true +      assert second_user.confirmation_pending == true + +      build_conn() +      |> assign(:user, admin) +      |> patch("/api/pleroma/admin/users/confirm_email", %{ +        nicknames: [ +          first_user.nickname, +          second_user.nickname +        ] +      }) + +      assert first_user.confirmation_pending == true +      assert second_user.confirmation_pending == true + +      log_entry = Repo.one(ModerationLog) + +      assert ModerationLog.get_log_entry_message(log_entry) == +               "@#{admin.nickname} confirmed email for users: @#{first_user.nickname}, @#{ +                 second_user.nickname +               }" +    end +  end + +  describe "PATCH /resend_confirmation_email" do +    setup %{conn: conn} do +      admin = insert(:user, is_admin: true) + +      %{conn: assign(conn, :user, admin), admin: admin} +    end + +    test "it resend emails for two users", %{admin: admin} do +      [first_user, second_user] = insert_pair(:user, confirmation_pending: true) + +      build_conn() +      |> assign(:user, admin) +      |> patch("/api/pleroma/admin/users/resend_confirmation_email", %{ +        nicknames: [ +          first_user.nickname, +          second_user.nickname +        ] +      }) + +      log_entry = Repo.one(ModerationLog) + +      assert ModerationLog.get_log_entry_message(log_entry) == +               "@#{admin.nickname} re-sent confirmation email for users: @#{first_user.nickname}, @#{ +                 second_user.nickname +               }" +    end +  end  end  # Needed for testing | 
