Remove letters from caseworking view

Because one-off letters aren’t a thing yet there’s no way for
caseworkers to send letters. So showing them letter templates will just
confuse them.
This commit is contained in:
Chris Hill-Scott
2018-06-14 16:21:57 +01:00
parent 0018ecd765
commit 9da9e85293
3 changed files with 100 additions and 21 deletions

View File

@@ -19,6 +19,7 @@ from tests import (
from tests.conftest import (
SERVICE_ONE_ID,
active_caseworking_user,
active_user_view_permissions,
mock_get_service_email_template,
mock_get_service_letter_template,
mock_get_service_template,
@@ -29,30 +30,79 @@ from tests.conftest import service_one as create_sample_service
from tests.conftest import single_letter_contact_block
@pytest.mark.parametrize('extra_args, expected_nav_links, expected_templates', [
(
{},
['Text message', 'Email'],
['sms_template_one', 'sms_template_two', 'email_template_one', 'email_template_two']
),
(
{'template_type': 'sms'},
['All', 'Email'],
['sms_template_one', 'sms_template_two'],
),
(
{'template_type': 'email'},
['All', 'Text message'],
['email_template_one', 'email_template_two'],
),
])
@pytest.mark.parametrize(
'user, expected_page_title, extra_args, expected_nav_links, expected_templates',
[
(
active_user_view_permissions,
'Templates',
{},
['Text message', 'Email', 'Letter'],
[
'sms_template_one',
'sms_template_two',
'email_template_one',
'email_template_two',
'letter_template_one',
'letter_template_two',
]
),
(
active_user_view_permissions,
'Templates',
{'template_type': 'sms'},
['All', 'Email', 'Letter'],
['sms_template_one', 'sms_template_two'],
),
(
active_user_view_permissions,
'Templates',
{'template_type': 'email'},
['All', 'Text message', 'Letter'],
['email_template_one', 'email_template_two'],
),
(
active_user_view_permissions,
'Templates',
{'template_type': 'letter'},
['All', 'Text message', 'Email'],
['letter_template_one', 'letter_template_two'],
),
(
active_caseworking_user,
'Choose a template',
{},
['Text message', 'Email'],
[
'sms_template_one',
'sms_template_two',
'email_template_one',
'email_template_two',
],
),
(
active_caseworking_user,
'Choose a template',
{'template_type': 'email'},
['All', 'Text message'],
['email_template_one', 'email_template_two'],
),
]
)
def test_should_show_page_for_choosing_a_template(
client_request,
mock_get_service_templates,
extra_args,
expected_nav_links,
expected_templates,
service_one,
mocker,
fake_uuid,
user,
expected_page_title,
):
mocker.patch('app.user_api_client.get_user', return_value=user(fake_uuid))
service_one['permissions'].append('letter')
page = client_request.get(
'main.choose_template',
@@ -60,7 +110,7 @@ def test_should_show_page_for_choosing_a_template(
**extra_args
)
assert normalize_spaces(page.select('h1')[0].text) == 'Templates'
assert normalize_spaces(page.select_one('h1').text) == expected_page_title
links_in_page = page.select('.pill a')

View File

@@ -953,6 +953,8 @@ def mock_get_service_templates(mocker):
uuid2 = str(generate_uuid())
uuid3 = str(generate_uuid())
uuid4 = str(generate_uuid())
uuid5 = str(generate_uuid())
uuid6 = str(generate_uuid())
def _create(service_id):
return {'data': [
@@ -969,7 +971,15 @@ def mock_get_service_templates(mocker):
template_json(
service_id, uuid4, "email_template_two", "email", "email template two content",
subject='email template two subject',
)
),
template_json(
service_id, uuid5, "letter_template_one", "letter", "letter template one content",
subject='letter template one subject',
),
template_json(
service_id, uuid6, "letter_template_two", "letter", "letter template two content",
subject='letter template two subject',
),
]}
return mocker.patch(