Stop letting people enter empty SMS senders

This shouldn’t be deployed until we’ve migrated the database to default
to GOVUK.
This commit is contained in:
Chris Hill-Scott
2017-05-19 17:12:44 +01:00
parent eb7b8631b6
commit ab150d876d
4 changed files with 30 additions and 11 deletions

View File

@@ -183,7 +183,7 @@ def test_sms_sender_form_validation(
form.sms_sender.data = ''
form.validate()
assert not form.errors
assert "Cant be empty" == form.errors['sms_sender'][0]
form.sms_sender.data = 'morethanelevenchars'
form.validate()

View File

@@ -615,6 +615,32 @@ def test_set_text_message_sender(
)
@pytest.mark.parametrize('content, expected_error', [
("", "Cant be empty"),
("twelvecharss", "Enter 11 characters or fewer"),
(".", "Use letters and numbers only")
])
def test_set_text_message_sender_validation(
logged_in_client,
mock_update_service,
service_one,
mock_get_letter_organisations,
content,
expected_error,
):
response = logged_in_client.post(url_for(
'main.service_set_sms_sender',
service_id=service_one['id']),
data={"sms_sender": content},
follow_redirects=True
)
page = BeautifulSoup(response.data.decode('utf-8'), 'html.parser')
assert response.status_code == 200
assert page.select(".error-message")[0].text.strip() == expected_error
assert not mock_update_service.called
def test_if_sms_sender_set_then_form_populated(
logged_in_client,
service_one,