Merge pull request #2506 from alphagov/fix_delete_folder_button_breadcrumb

Fix breadcrumbs on manage_template_folder page
This commit is contained in:
Pea (Malgorzata Tyczynska)
2018-11-19 10:49:28 +00:00
committed by GitHub
3 changed files with 74 additions and 14 deletions

View File

@@ -378,6 +378,60 @@ def test_rename_folder(client_request, service_one, mock_get_template_folders, m
)
def test_delete_template_folder_should_request_confirmation(
client_request, service_one, mock_get_template_folders, mocker
):
service_one['permissions'] += ['edit_folders']
folder_id = str(uuid.uuid4())
mock_get_template_folders.side_effect = [[
{'id': folder_id, 'name': 'sacrifice', 'parent_id': None},
], []]
mocker.patch(
'app.models.service.Service.get_templates',
return_value=[],
)
page = client_request.get(
'main.delete_template_folder', service_id=service_one['id'],
template_folder_id=folder_id
)
assert normalize_spaces(page.select('.banner-dangerous')[0].text) == (
'Are you sure you want to delete the sacrifice folder? '
'Yes, delete'
)
assert len(page.select('label')) == 0
assert len(page.select('button')) == 1
assert "Back to manage folder page" in page.text
def test_delete_template_folder_should_detect_non_empty_folder_on_get(
client_request, service_one, mock_get_template_folders, mocker
):
service_one['permissions'] += ['edit_folders']
folder_id = str(uuid.uuid4())
template_id = str(uuid.uuid4())
mock_get_template_folders.side_effect = [
[{'id': folder_id, 'name': "can't touch me", 'parent_id': None}],
[]
]
mocker.patch(
'app.models.service.Service.get_templates',
return_value=[{'id': template_id, 'name': 'template'}],
)
client_request.get(
'main.delete_template_folder', service_id=service_one['id'],
template_folder_id=folder_id,
_expected_redirect=url_for(
"main.choose_template",
template_type="all",
service_id=service_one['id'],
template_folder_id=folder_id,
_external=True
),
_expected_status=302
)
def test_delete_folder(client_request, service_one, mock_get_template_folders, mocker):
mock_delete = mocker.patch('app.template_folder_api_client.delete_template_folder')
folder_id = str(uuid.uuid4())