404 for step-0

This commit is contained in:
David McDonald
2020-10-02 13:52:37 +01:00
parent 1f900e74a9
commit c1f67514a2
2 changed files with 19 additions and 1 deletions

View File

@@ -46,7 +46,7 @@ def begin_tour(service_id, template_id):
def tour_step(service_id, template_id, step_index):
db_template = current_service.get_template_with_user_permission_or_403(template_id, current_user)
if db_template['template_type'] != 'sms':
if (db_template['template_type'] != 'sms' or step_index == 0):
abort(404)
if 'placeholders' not in session:

View File

@@ -206,6 +206,24 @@ def test_should_404_if_non_sms_template_for_tour_step(
)
def test_should_404_for_get_tour_step_0(
client_request,
mock_get_service_template_with_multiple_placeholders,
service_one,
fake_uuid,
):
with client_request.session_transaction() as session:
session['placeholders'] = {}
client_request.get(
'main.tour_step',
service_id=SERVICE_ONE_ID,
template_id=fake_uuid,
step_index=0,
_expected_status=404
)
@pytest.mark.parametrize('method', ['GET', 'POST'])
def test_should_403_if_user_does_not_have_send_permissions_for_tour_step(
mocker,