Merge pull request #2740 from alphagov/invited-by-notify

Let the Notify team invite people to an organisation
This commit is contained in:
Chris Hill-Scott
2020-03-11 14:52:05 +00:00
committed by GitHub
2 changed files with 13 additions and 2 deletions

View File

@@ -48,7 +48,11 @@ def invite_user_to_org(organisation_id):
recipient=invited_org_user.email_address, recipient=invited_org_user.email_address,
service=template.service, service=template.service,
personalisation={ personalisation={
'user_name': invited_org_user.invited_by.name, 'user_name': (
'The GOV.UK Notify team'
if invited_org_user.invited_by.platform_admin
else invited_org_user.invited_by.name
),
'organisation_name': invited_org_user.organisation.name, 'organisation_name': invited_org_user.organisation.name,
'url': invited_org_user_url( 'url': invited_org_user_url(
invited_org_user.id, invited_org_user.id,

View File

@@ -5,6 +5,10 @@ from app.models import Notification, INVITE_PENDING
from tests.app.db import create_invited_org_user from tests.app.db import create_invited_org_user
@pytest.mark.parametrize('platform_admin, expected_invited_by', (
(True, 'The GOV.UK Notify team'),
(False, 'Test User')
))
@pytest.mark.parametrize('extra_args, expected_start_of_invite_url', [ @pytest.mark.parametrize('extra_args, expected_start_of_invite_url', [
( (
{}, {},
@@ -23,9 +27,12 @@ def test_create_invited_org_user(
org_invite_email_template, org_invite_email_template,
extra_args, extra_args,
expected_start_of_invite_url, expected_start_of_invite_url,
platform_admin,
expected_invited_by,
): ):
mocked = mocker.patch('app.celery.provider_tasks.deliver_email.apply_async') mocked = mocker.patch('app.celery.provider_tasks.deliver_email.apply_async')
email_address = 'invited_user@example.com' email_address = 'invited_user@example.com'
sample_user.platform_admin = platform_admin
data = dict( data = dict(
organisation=str(sample_organisation.id), organisation=str(sample_organisation.id),
@@ -53,7 +60,7 @@ def test_create_invited_org_user(
assert len(notification.personalisation.keys()) == 3 assert len(notification.personalisation.keys()) == 3
assert notification.personalisation['organisation_name'] == 'sample organisation' assert notification.personalisation['organisation_name'] == 'sample organisation'
assert notification.personalisation['user_name'] == 'Test User' assert notification.personalisation['user_name'] == expected_invited_by
assert notification.personalisation['url'].startswith(expected_start_of_invite_url) assert notification.personalisation['url'].startswith(expected_start_of_invite_url)
assert len(notification.personalisation['url']) > len(expected_start_of_invite_url) assert len(notification.personalisation['url']) > len(expected_start_of_invite_url)