Add unit tests for activity (and SMS) flows

These are basic tests to make sure that the pages stay stitched together.

Added for both the jobs and send SMS flows (because the send SMS flow didn’t
have any before)
This commit is contained in:
Chris Hill-Scott
2015-12-17 16:21:34 +00:00
parent d4a03a40c8
commit 0e6dab3f5c
3 changed files with 48 additions and 1 deletions

View File

@@ -40,7 +40,7 @@ def showjobs():
return render_template('views/jobs.html')
@main.route("/jobs/job/")
@main.route("/jobs/job")
def showjob():
return render_template(
'views/job.html',

View File

@@ -0,0 +1,20 @@
def test_should_return_list_of_all_jobs(notifications_admin):
response = notifications_admin.test_client().get('/jobs')
assert response.status_code == 200
assert 'This page will be where we show the list of jobs that this service has processed' in response.get_data(as_text=True) # noqa
def test_should_show_page_for_one_job(notifications_admin):
response = notifications_admin.test_client().get('/jobs/job')
assert response.status_code == 200
assert 'contact-demo.csv sent with Reminder template' in response.get_data(as_text=True)
def test_should_show_page_for_one_notification(notifications_admin):
response = notifications_admin.test_client().get('/jobs/job/notification/3')
assert response.status_code == 200
assert 'Text message' in response.get_data(as_text=True)
assert '+44 7700 900 522' in response.get_data(as_text=True)

View File

@@ -0,0 +1,27 @@
def test_should_return_sms_template_picker(notifications_admin):
response = notifications_admin.test_client().get('/sms/send')
assert response.status_code == 200
assert 'Choose text message template' in response.get_data(as_text=True)
def test_should_redirect_to_sms_check_page(notifications_admin):
response = notifications_admin.test_client().post('/sms/send')
assert response.status_code == 302
assert response.location == 'http://localhost/sms/check'
def test_should_return_check_sms_page(notifications_admin):
response = notifications_admin.test_client().get('/sms/check')
assert response.status_code == 200
assert 'Check and confirm' in response.get_data(as_text=True)
assert 'Send 10 text messages' in response.get_data(as_text=True)
def test_should_redirect_to_job(notifications_admin):
response = notifications_admin.test_client().post('/sms/check')
assert response.status_code == 302
assert response.location == 'http://localhost/jobs/job'