From 3c154f445c1c1a3dca561341044b3819fb6da9e8 Mon Sep 17 00:00:00 2001 From: leigh-mil Date: Sat, 17 Nov 2018 10:21:45 -0500 Subject: [PATCH] Send workspace invite email to email submitted in add new member form. --- atst/routes/workspaces.py | 2 +- tests/routes/test_workspaces.py | 24 ++++++++++++++++++++++++ 2 files changed, 25 insertions(+), 1 deletion(-) diff --git a/atst/routes/workspaces.py b/atst/routes/workspaces.py index c216d5ee..d691f878 100644 --- a/atst/routes/workspaces.py +++ b/atst/routes/workspaces.py @@ -264,7 +264,7 @@ def create_member(workspace_id): new_member = Workspaces.create_member(user, workspace, form.data) invite = Invitations.create(user, new_member) send_invite_email( - g.current_user.full_name, invite.token, new_member.user.email + g.current_user.full_name, invite.token, form.data["email"] ) return redirect( diff --git a/tests/routes/test_workspaces.py b/tests/routes/test_workspaces.py index 3737042e..1a91e723 100644 --- a/tests/routes/test_workspaces.py +++ b/tests/routes/test_workspaces.py @@ -1,5 +1,6 @@ import datetime from flask import url_for +import pytest from tests.factories import ( UserFactory, @@ -339,6 +340,29 @@ def test_existing_member_accepts_valid_invite(client, user_session): assert len(Workspaces.for_user(user)) == 1 +def test_existing_member_invite_sent_to_email_submitted_in_form( + client, user_session, queue +): + workspace = WorkspaceFactory.create() + user = UserFactory.create() + member_form_data = { + "dod_id": user.dod_id, + "first_name": user.first_name, + "last_name": user.last_name, + "workspace_role": "developer", + "email": "example@example.com", + } + user_session(workspace.owner) + client.post( + url_for("workspaces.create_member", workspace_id=workspace.id), + data={**member_form_data}, + ) + + assert user.email != "example@example.com" + assert len(queue.get_queue().jobs[0].args[0]) == 1 + assert queue.get_queue().jobs[0].args[0][0] == "example@example.com" + + def test_new_member_accepts_valid_invite(monkeypatch, client, user_session): workspace = WorkspaceFactory.create() user_info = UserFactory.dictionary()