Merge pull request #685 from alphagov/delete-template-bug

fix bug - calling wrong template_statistic endpoint causing 500 error…
This commit is contained in:
Chris Hill-Scott
2016-06-15 09:37:29 +01:00
committed by GitHub
3 changed files with 45 additions and 44 deletions

View File

@@ -186,7 +186,7 @@ def delete_service_template(service_id, template_id):
template['template_content'] = template['content'] template['template_content'] = template['content']
form = form_objects[template['template_type']](**template) form = form_objects[template['template_type']](**template)
template_statistics = template_statistics_client.get_template_statistics_for_service(service_id, template['id']) template_statistics = template_statistics_client.get_template_statistics_for_template(service_id, template['id'])
last_use_message = get_last_use_message(form.name.data, template_statistics) last_use_message = get_last_use_message(form.name.data, template_statistics)
flash('{}. Are you sure you want to delete it?'.format(last_use_message), 'delete') flash('{}. Are you sure you want to delete it?'.format(last_use_message), 'delete')
return render_template( return render_template(

View File

@@ -229,7 +229,6 @@ def test_should_show_delete_template_page(app_,
mock_get_user, mock_get_user,
mock_get_user_by_email, mock_get_user_by_email,
mock_has_permissions, mock_has_permissions,
mock_get_template_statistics,
mock_get_template_statistics_for_template, mock_get_template_statistics_for_template,
fake_uuid): fake_uuid):
with app_.test_request_context(): with app_.test_request_context():
@@ -247,8 +246,8 @@ def test_should_show_delete_template_page(app_,
assert 'Are you sure' in content assert 'Are you sure' in content
assert 'Two week reminder' in content assert 'Two week reminder' in content
assert 'Your vehicle tax is about to expire' in content assert 'Your vehicle tax is about to expire' in content
mock_get_service_template.assert_called_with( mock_get_service_template.assert_called_with(service_id, template_id)
service_id, template_id) mock_get_template_statistics_for_template.assert_called_with(service_id, template_id)
def test_should_redirect_when_deleting_a_template(app_, def test_should_redirect_when_deleting_a_template(app_,
@@ -292,33 +291,33 @@ def test_should_redirect_when_deleting_a_template(app_,
service_id, template_id) service_id, template_id)
def test_route_permissions(mocker, @pytest.mark.parametrize('route', [
'main.add_service_template',
'main.edit_service_template',
'main.delete_service_template'
])
def test_route_permissions(route,
mocker,
app_, app_,
api_user_active, api_user_active,
service_one, service_one,
mock_get_service_template, mock_get_service_template,
mock_get_template_statistics,
mock_get_template_statistics_for_template, mock_get_template_statistics_for_template,
fake_uuid): fake_uuid):
routes = [
'main.add_service_template',
'main.edit_service_template',
'main.delete_service_template']
with app_.test_request_context(): with app_.test_request_context():
for route in routes: validate_route_permission(
validate_route_permission( mocker,
mocker, app_,
app_, "GET",
"GET", 200,
200, url_for(
url_for( route,
route, service_id=service_one['id'],
service_id=service_one['id'], template_type='sms',
template_type='sms', template_id=fake_uuid),
template_id=fake_uuid), ['manage_templates'],
['manage_templates'], api_user_active,
api_user_active, service_one)
service_one)
def test_route_permissions_for_choose_template(mocker, def test_route_permissions_for_choose_template(mocker,
@@ -342,31 +341,33 @@ def test_route_permissions_for_choose_template(mocker,
service_one) service_one)
def test_route_invalid_permissions(mocker, @pytest.mark.parametrize('route', [
'main.add_service_template',
'main.edit_service_template',
'main.delete_service_template'
])
def test_route_invalid_permissions(route,
mocker,
app_, app_,
api_user_active, api_user_active,
service_one, service_one,
mock_get_service_template, mock_get_service_template,
mock_get_template_statistics_for_template,
fake_uuid): fake_uuid):
routes = [
'main.add_service_template',
'main.edit_service_template',
'main.delete_service_template']
with app_.test_request_context(): with app_.test_request_context():
for route in routes: validate_route_permission(
validate_route_permission( mocker,
mocker, app_,
app_, "GET",
"GET", 403,
403, url_for(
url_for( route,
route, service_id=service_one['id'],
service_id=service_one['id'], template_type='sms',
template_type='sms', template_id=fake_uuid),
template_id=fake_uuid), ['view_activity'],
['view_activity'], api_user_active,
api_user_active, service_one)
service_one)
def test_get_last_use_message_returns_no_template_message(): def test_get_last_use_message_returns_no_template_message():

View File

@@ -1026,7 +1026,7 @@ def mock_get_template_statistics_for_template(mocker, service_one):
] ]
return mocker.patch( return mocker.patch(
'app.template_statistics_client.get_template_statistics_for_service', side_effect=_get_stats) 'app.template_statistics_client.get_template_statistics_for_template', side_effect=_get_stats)
@pytest.fixture(scope='function') @pytest.fixture(scope='function')