mirror of
https://github.com/GSA/notifications-admin.git
synced 2026-09-05 21:38:24 -04:00
Decouple deletion tests from "get_templates" fn
Using create_template here is easier than template_json as it has various parameters preset [^1]. [^1]: https://github.com/alphagov/notifications-admin/blob/master/tests/conftest.py#L3986
This commit is contained in:
@@ -5,7 +5,7 @@ from flask import abort, url_for
|
|||||||
from notifications_python_client.errors import HTTPError
|
from notifications_python_client.errors import HTTPError
|
||||||
|
|
||||||
from app.models.user import User
|
from app.models.user import User
|
||||||
from tests import sample_uuid, template_json
|
from tests import sample_uuid
|
||||||
from tests.conftest import (
|
from tests.conftest import (
|
||||||
SERVICE_ONE_ID,
|
SERVICE_ONE_ID,
|
||||||
TEMPLATE_ONE_ID,
|
TEMPLATE_ONE_ID,
|
||||||
@@ -13,6 +13,7 @@ from tests.conftest import (
|
|||||||
create_active_caseworking_user,
|
create_active_caseworking_user,
|
||||||
create_active_user_view_permissions,
|
create_active_user_view_permissions,
|
||||||
create_active_user_with_permissions,
|
create_active_user_with_permissions,
|
||||||
|
create_template,
|
||||||
normalize_spaces,
|
normalize_spaces,
|
||||||
)
|
)
|
||||||
|
|
||||||
@@ -920,17 +921,17 @@ def test_manage_folder_users_doesnt_change_permissions_current_user_cannot_manag
|
|||||||
|
|
||||||
|
|
||||||
def test_delete_template_folder_should_request_confirmation(
|
def test_delete_template_folder_should_request_confirmation(
|
||||||
client_request, service_one, mock_get_template_folders, mocker,
|
client_request,
|
||||||
|
service_one,
|
||||||
|
mock_get_template_folders,
|
||||||
|
mocker,
|
||||||
|
mock_get_service_templates_when_no_templates_exist,
|
||||||
):
|
):
|
||||||
mocker.patch('app.models.service.Service.active_users', [])
|
mocker.patch('app.models.service.Service.active_users', [])
|
||||||
folder_id = str(uuid.uuid4())
|
folder_id = str(uuid.uuid4())
|
||||||
mock_get_template_folders.side_effect = [[
|
mock_get_template_folders.side_effect = [[
|
||||||
_folder('sacrifice', folder_id, None),
|
_folder('sacrifice', folder_id, None),
|
||||||
], []]
|
], []]
|
||||||
mocker.patch(
|
|
||||||
'app.models.service.Service.get_templates',
|
|
||||||
return_value=[],
|
|
||||||
)
|
|
||||||
page = client_request.get(
|
page = client_request.get(
|
||||||
'main.delete_template_folder', service_id=service_one['id'],
|
'main.delete_template_folder', service_id=service_one['id'],
|
||||||
template_folder_id=folder_id,
|
template_folder_id=folder_id,
|
||||||
@@ -958,17 +959,19 @@ def test_delete_template_folder_should_request_confirmation(
|
|||||||
|
|
||||||
|
|
||||||
def test_delete_template_folder_should_detect_non_empty_folder_on_get(
|
def test_delete_template_folder_should_detect_non_empty_folder_on_get(
|
||||||
client_request, service_one, mock_get_template_folders, mocker
|
client_request,
|
||||||
|
service_one,
|
||||||
|
mock_get_template_folders,
|
||||||
|
mocker
|
||||||
):
|
):
|
||||||
folder_id = str(uuid.uuid4())
|
folder_id = str(uuid.uuid4())
|
||||||
template_id = str(uuid.uuid4())
|
|
||||||
mock_get_template_folders.side_effect = [
|
mock_get_template_folders.side_effect = [
|
||||||
[_folder("can't touch me", folder_id, None)],
|
[_folder("can't touch me", folder_id, None)],
|
||||||
[]
|
[]
|
||||||
]
|
]
|
||||||
mocker.patch(
|
mocker.patch(
|
||||||
'app.models.service.Service.get_templates',
|
'app.service_api_client.get_service_templates',
|
||||||
return_value=[template_json(service_one['id'], template_id)],
|
return_value={'data': [create_template(folder=folder_id)]}
|
||||||
)
|
)
|
||||||
client_request.get(
|
client_request.get(
|
||||||
'main.delete_template_folder', service_id=service_one['id'],
|
'main.delete_template_folder', service_id=service_one['id'],
|
||||||
@@ -988,16 +991,19 @@ def test_delete_template_folder_should_detect_non_empty_folder_on_get(
|
|||||||
None,
|
None,
|
||||||
PARENT_FOLDER_ID,
|
PARENT_FOLDER_ID,
|
||||||
))
|
))
|
||||||
def test_delete_folder(client_request, service_one, mock_get_template_folders, mocker, parent_folder_id):
|
def test_delete_folder(
|
||||||
|
client_request,
|
||||||
|
service_one,
|
||||||
|
mock_get_template_folders,
|
||||||
|
mocker,
|
||||||
|
parent_folder_id,
|
||||||
|
mock_get_service_templates_when_no_templates_exist,
|
||||||
|
):
|
||||||
mock_delete = mocker.patch('app.template_folder_api_client.delete_template_folder')
|
mock_delete = mocker.patch('app.template_folder_api_client.delete_template_folder')
|
||||||
folder_id = str(uuid.uuid4())
|
folder_id = str(uuid.uuid4())
|
||||||
mock_get_template_folders.side_effect = [[
|
mock_get_template_folders.side_effect = [[
|
||||||
_folder('sacrifice', folder_id, parent_folder_id),
|
_folder('sacrifice', folder_id, parent_folder_id),
|
||||||
], []]
|
], []]
|
||||||
mocker.patch(
|
|
||||||
'app.models.service.Service.get_templates',
|
|
||||||
return_value=[],
|
|
||||||
)
|
|
||||||
|
|
||||||
client_request.post(
|
client_request.post(
|
||||||
'main.delete_template_folder',
|
'main.delete_template_folder',
|
||||||
|
|||||||
Reference in New Issue
Block a user