mirror of
https://github.com/GSA/notifications-admin.git
synced 2026-09-03 14:08:24 -04:00
62 lines
2.0 KiB
Python
62 lines
2.0 KiB
Python
from flask import url_for
|
|
|
|
|
|
def test_add_page_shows_option_for_folder(
|
|
client_request,
|
|
service_one,
|
|
mocker,
|
|
mock_get_service_templates,
|
|
mock_get_organisations_and_services_for_user,
|
|
):
|
|
service_one['permissions'] += ['edit_folders']
|
|
mocker.patch('app.service_api_client.get_service', return_value={"data": service_one})
|
|
|
|
page = client_request.get(
|
|
'main.add_template_by_type',
|
|
service_id=service_one['id'],
|
|
_test_page_title=False
|
|
)
|
|
|
|
radios = page.select('input[type=radio]')
|
|
labels = page.select('label')
|
|
|
|
assert [x['value'] for x in radios] == ['email', 'sms', 'copy-existing', 'folder']
|
|
assert [x.text.strip() for x in labels] == [
|
|
'Email template',
|
|
'Text message template',
|
|
'Copy of an existing template',
|
|
'Folder'
|
|
]
|
|
|
|
|
|
def test_get_add_template_folder_page(client_request, service_one):
|
|
service_one['permissions'] += ['edit_folders']
|
|
|
|
page = client_request.get('main.add_template_folder', service_id=service_one['id'])
|
|
|
|
assert page.find('input', attrs={'name': 'name'}) is not None
|
|
|
|
|
|
def test_add_template_folder_page_rejects_if_service_doesnt_have_permission(client_request, service_one):
|
|
client_request.get('main.add_template_folder', service_id=service_one['id'], _expected_status=403)
|
|
client_request.post('main.add_template_folder', service_id=service_one['id'], _expected_status=403)
|
|
|
|
|
|
def test_post_add_template_folder_page(client_request, service_one, mocker):
|
|
mock_create = mocker.patch('app.template_folder_api_client.create_template_folder')
|
|
|
|
service_one['permissions'] += ['edit_folders']
|
|
|
|
client_request.post(
|
|
'main.add_template_folder',
|
|
service_id=service_one['id'],
|
|
_data={'name': 'foo'},
|
|
_expected_redirect=url_for(
|
|
'main.choose_template',
|
|
service_id=service_one['id'],
|
|
_external=True,
|
|
)
|
|
)
|
|
|
|
mock_create.assert_called_once_with(service_one['id'], name='foo', parent_id=None)
|