Moved mmg_url to configs.

Fix up the tests
This commit is contained in:
Rebecca Law
2016-07-20 10:40:50 +01:00
parent 30f7377d7e
commit c8ad5362eb
5 changed files with 17 additions and 25 deletions

View File

@@ -1,5 +1,6 @@
import pytest
import requests_mock
from app import mmg_client
from app.clients.sms.mmg import (get_mmg_responses, MMGClientException)
@@ -28,20 +29,20 @@ def test_should_be_none_if_unrecognised_status_code():
assert not response_dict['success']
def test_send_sms_successful_returns_mmg_response(mocker, mock_mmg_client):
def test_send_sms_successful_returns_mmg_response(notify_api, mocker):
to = content = reference = 'foo'
response_dict = {'Reference': 12345678}
with requests_mock.Mocker() as request_mock:
request_mock.post('https://api.mmg.co.uk/json/api.php', json=response_dict, status_code=200)
response = mock_mmg_client.send_sms(to, content, reference)
response = mmg_client.send_sms(to, content, reference)
response_json = response.json()
assert response.status_code == 200
assert response_json['Reference'] == 12345678
def test_send_sms_calls_mmg_correctly(mocker, mock_mmg_client):
def test_send_sms_calls_mmg_correctly(notify_api, mocker):
to = '+447234567890'
content = 'my message'
reference = 'my reference'
@@ -49,7 +50,7 @@ def test_send_sms_calls_mmg_correctly(mocker, mock_mmg_client):
with requests_mock.Mocker() as request_mock:
request_mock.post('https://api.mmg.co.uk/json/api.php', json=response_dict, status_code=200)
mock_mmg_client.send_sms(to, content, reference)
mmg_client.send_sms(to, content, reference)
assert request_mock.call_count == 1
assert request_mock.request_history[0].url == 'https://api.mmg.co.uk/json/api.php'
@@ -59,12 +60,12 @@ def test_send_sms_calls_mmg_correctly(mocker, mock_mmg_client):
assert request_args['reqType'] == 'BULK'
assert request_args['MSISDN'] == to
assert request_args['msg'] == content
assert request_args['sender'] == 'bar'
assert request_args['sender'] == 'from_number'
assert request_args['cid'] == reference
assert request_args['multi'] is True
def test_send_sms_raises_if_mmg_rejects(mocker, mock_mmg_client):
def test_send_sms_raises_if_mmg_rejects(notify_api, mocker):
to = content = reference = 'foo'
response_dict = {
'Error': 206,
@@ -73,13 +74,13 @@ def test_send_sms_raises_if_mmg_rejects(mocker, mock_mmg_client):
with pytest.raises(MMGClientException) as exc, requests_mock.Mocker() as request_mock:
request_mock.post('https://api.mmg.co.uk/json/api.php', json=response_dict, status_code=400)
mock_mmg_client.send_sms(to, content, reference)
mmg_client.send_sms(to, content, reference)
assert exc.value.code == 206
assert exc.value.description == 'Some kind of error'
def test_send_sms_override_configured_shortcode_with_sender(mocker, mock_mmg_client):
def test_send_sms_override_configured_shortcode_with_sender(notify_api, mocker):
to = '+447234567890'
content = 'my message'
reference = 'my reference'
@@ -88,7 +89,7 @@ def test_send_sms_override_configured_shortcode_with_sender(mocker, mock_mmg_cli
with requests_mock.Mocker() as request_mock:
request_mock.post('https://api.mmg.co.uk/json/api.php', json=response_dict, status_code=200)
mock_mmg_client.send_sms(to, content, reference, sender=sender)
mmg_client.send_sms(to, content, reference, sender=sender)
request_args = request_mock.request_history[0].json()
assert request_args['sender'] == 'fromservice'