diff options
author | Ivan Tashkinov <ivantashkinov@gmail.com> | 2018-12-13 18:23:05 +0300 |
---|---|---|
committer | Ivan Tashkinov <ivantashkinov@gmail.com> | 2018-12-14 12:28:23 +0300 |
commit | a89e3b4b60b357992aeaedad8e3ff8d086f693a0 (patch) | |
tree | a7e8913ea9472c20385df4f83ffa668a0d3adf22 /test/web/admin_api | |
parent | 3cbf16a5fe9f7618cae557eb260093881febd1d1 (diff) | |
download | pleroma-a89e3b4b60b357992aeaedad8e3ff8d086f693a0.tar.gz |
[#114] Moved email_invite action to AdminAPIController, adjusted tests.
Diffstat (limited to 'test/web/admin_api')
-rw-r--r-- | test/web/admin_api/admin_api_controller_test.exs | 31 |
1 files changed, 31 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 4c12dd988..e7ad60aa3 100644 --- a/test/web/admin_api/admin_api_controller_test.exs +++ b/test/web/admin_api/admin_api_controller_test.exs @@ -154,6 +154,37 @@ defmodule Pleroma.Web.AdminAPI.AdminAPIControllerTest do end end + describe "POST /api/pleroma/admin/email_invite, with valid parameters" do + setup do + registrations_open = Pleroma.Config.get([:instance, :registrations_open]) + invites_enabled = Pleroma.Config.get([:instance, :invites_enabled]) + Pleroma.Config.put([:instance, :registrations_open], false) + Pleroma.Config.put([:instance, :invites_enabled], true) + + on_exit(fn -> + Pleroma.Config.put([:instance, :registrations_open], registrations_open) + Pleroma.Config.put([:instance, :invites_enabled], invites_enabled) + :ok + end) + + [user: insert(:user, info: %{is_admin: true})] + end + + test "sends invitation and returns 204", %{conn: conn, user: user} do + recipient_email = "foo@bar.com" + recipient_name = "J. D." + + conn = + conn + |> assign(:user, user) + |> post("/api/pleroma/admin/email_invite?email=#{recipient_email}&name=#{recipient_name}") + + assert json_response(conn, :no_content) + + Swoosh.TestAssertions.assert_email_sent() + end + end + test "/api/pleroma/admin/invite_token" do admin = insert(:user, info: %{is_admin: true}) |