mirror of
https://github.com/GSA/notifications-api.git
synced 2026-02-04 02:11:11 -05:00
ensure international numbers are handled correctly
the international flag semantically means 'Should we throw an error if an international number is passed in?' (and the answer is no. We should not.)
This commit is contained in:
@@ -24,7 +24,7 @@ def get_inbound_sms_for_service(service_id):
|
|||||||
|
|
||||||
if user_number:
|
if user_number:
|
||||||
# we use this to normalise to an international phone number
|
# we use this to normalise to an international phone number
|
||||||
user_number = validate_and_format_phone_number(user_number)
|
user_number = validate_and_format_phone_number(user_number, international=True)
|
||||||
|
|
||||||
results = dao_get_inbound_sms_for_service(service_id, limit, user_number)
|
results = dao_get_inbound_sms_for_service(service_id, limit, user_number)
|
||||||
|
|
||||||
|
|||||||
@@ -64,8 +64,8 @@ def format_mmg_datetime(date):
|
|||||||
|
|
||||||
|
|
||||||
def create_inbound_mmg_sms_object(service, json):
|
def create_inbound_mmg_sms_object(service, json):
|
||||||
message = format_message(json['Message'])
|
message = format_mmg_message(json['Message'])
|
||||||
user_number = validate_and_format_phone_number(json['MSISDN'])
|
user_number = validate_and_format_phone_number(json['MSISDN'], international=True)
|
||||||
|
|
||||||
provider_date = json.get('DateRecieved')
|
provider_date = json.get('DateRecieved')
|
||||||
if provider_date:
|
if provider_date:
|
||||||
|
|||||||
@@ -67,6 +67,21 @@ def test_get_inbound_sms_filters_user_number(admin_request, sample_service, user
|
|||||||
assert sms['data'][0]['user_number'] == str(one.user_number)
|
assert sms['data'][0]['user_number'] == str(one.user_number)
|
||||||
|
|
||||||
|
|
||||||
|
def test_get_inbound_sms_filters_international_user_number(admin_request, sample_service):
|
||||||
|
# user_number in the db is international and normalised
|
||||||
|
one = create_inbound_sms(sample_service, user_number='12025550104')
|
||||||
|
two = create_inbound_sms(sample_service)
|
||||||
|
|
||||||
|
sms = admin_request.get(
|
||||||
|
'inbound_sms.get_inbound_sms_for_service',
|
||||||
|
endpoint_kwargs={'service_id': sample_service.id, 'user_number': '+1 (202) 555-0104'}
|
||||||
|
)
|
||||||
|
|
||||||
|
assert len(sms['data']) == 1
|
||||||
|
assert sms['data'][0]['id'] == str(one.id)
|
||||||
|
assert sms['data'][0]['user_number'] == str(one.user_number)
|
||||||
|
|
||||||
|
|
||||||
def test_get_inbound_sms_summary(admin_request, sample_service):
|
def test_get_inbound_sms_summary(admin_request, sample_service):
|
||||||
other_service = create_service(service_name='other_service')
|
other_service = create_service(service_name='other_service')
|
||||||
with freeze_time('2017-01-01'):
|
with freeze_time('2017-01-01'):
|
||||||
|
|||||||
Reference in New Issue
Block a user