Change label to exclude the type of message being sent.

Fix send email to self, it was always using mobile number to send mesasge. This fixes that.
This commit is contained in:
Rebecca Law
2016-03-02 17:02:41 +00:00
parent f0e0006a7c
commit 789264a863
4 changed files with 47 additions and 5 deletions

View File

@@ -139,10 +139,17 @@ def send_message_to_self(service_id, template_id):
[first_column_heading[template.template_type]] +
list(template.placeholders)
)
writer.writerow(
[current_user.mobile_number] +
["test {}".format(header) for header in template.placeholders]
)
if template.template_type == 'sms':
writer.writerow(
[current_user.mobile_number] +
["test {}".format(header) for header in template.placeholders]
)
if template.template_type == 'email':
writer.writerow(
[current_user.email_address] +
["test {}".format(header) for header in template.placeholders]
)
filedata = {
'file_name': 'Test run',
'data': output.getvalue().splitlines()

View File

@@ -49,7 +49,7 @@
{% if upload_result.valid %}
<form method="post" enctype="multipart/form-data">
<input type="hidden" name="csrf_token" value="{{ csrf_token() }}" />
<input type="submit" class="button" value="{{ "Send {} text message{}".format(upload_result.rows|count, '' if upload_result.rows|count == 1 else 's') }}" />
<input type="submit" class="button" value="{{ "Send {} message{}".format(upload_result.rows|count, '' if upload_result.rows|count == 1 else 's') }}" />
<a href="{{url_for('.send_messages', service_id=service_id, template_id=template.id)}}" class="page-footer-back-link">Back</a>
</form>
{% else %}

View File

@@ -144,6 +144,30 @@ def test_send_test_message_to_self(
mock_s3_upload.assert_called_with(ANY, '12345', expected_data, 'eu-west-1')
def test_send_test_message_to_self(
app_,
mocker,
api_user_active,
mock_login,
mock_get_service,
mock_get_service_email_template,
mock_s3_upload
):
expected_data = {'data': ['email address', 'test@user.gov.uk'], 'file_name': 'Test run'}
mocker.patch('app.main.views.send.s3download', return_value='email address\r\ntest@user.gov.uk')
with app_.test_request_context():
with app_.test_client() as client:
client.login(api_user_active)
response = client.get(
url_for('main.send_message_to_self', service_id=12345, template_id=54321),
follow_redirects=True
)
assert response.status_code == 200
mock_s3_upload.assert_called_with(ANY, '12345', expected_data, 'eu-west-1')
def test_download_example_csv(
app_,
mocker,

View File

@@ -141,6 +141,17 @@ def mock_get_service_template(mocker):
'app.notifications_api_client.get_service_template', side_effect=_create)
@pytest.fixture(scope='function')
def mock_get_service_email_template(mocker):
def _create(service_id, template_id):
template = template_json(
template_id, "Two week reminder", "email", "Your vehicle tax is about to expire", service_id)
return {'data': template}
return mocker.patch(
'app.notifications_api_client.get_service_template', side_effect=_create)
@pytest.fixture(scope='function')
def mock_create_service_template(mocker):
def _create(name, type_, content, service):