mirror of
https://github.com/GSA/notifications-api.git
synced 2026-02-02 09:26:08 -05:00
Merge pull request #2740 from alphagov/invited-by-notify
Let the Notify team invite people to an organisation
This commit is contained in:
@@ -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,
|
||||||
|
|||||||
@@ -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)
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user