Merge pull request #1613 from alphagov/international-500

fix 500 when receiving delivery receipt from some international nums
This commit is contained in:
Leo Hemsted
2018-01-30 13:58:39 +00:00
committed by GitHub
2 changed files with 16 additions and 1 deletions

View File

@@ -134,7 +134,8 @@ def _decide_permanent_temporary_failure(current_status, status):
def country_records_delivery(phone_prefix):
return INTERNATIONAL_BILLING_RATES[phone_prefix]['attributes']['dlr'].lower() == 'yes'
dlr = INTERNATIONAL_BILLING_RATES[phone_prefix]['attributes']['dlr']
return dlr and dlr.lower() == 'yes'
def _update_notification_status(notification, status):

View File

@@ -470,6 +470,20 @@ def test_should_not_update_status_by_reference_if_from_country_with_no_delivery_
assert notification.status == NOTIFICATION_SENT
def test_should_not_update_status_by_id_if_sent_to_country_with_unknown_delivery_receipts(sample_template):
notification = create_notification(
sample_template,
status=NOTIFICATION_SENT,
international=True,
phone_prefix='249' # sudan has no delivery receipts (or at least, that we know about)
)
res = update_notification_status_by_id(notification.id, 'delivered')
assert res is None
assert notification.status == NOTIFICATION_SENT
def test_should_not_update_status_by_id_if_sent_to_country_with_carrier_delivery_receipts(sample_template):
notification = create_notification(
sample_template,