toulouse_maelis: check q is a DUI in search-family-dui (#88873) #505
|
@ -1401,15 +1401,19 @@ class ToulouseMaelis(BaseResource, HTTPResource):
|
|||
},
|
||||
)
|
||||
def search_family_dui(self, request, q=None):
|
||||
data = []
|
||||
if q:
|
||||
try:
|
||||
response = self.call('Family', 'readFamilyList', dossierNumber=q)
|
||||
except APIError:
|
||||
pass
|
||||
else:
|
||||
data = serialize_object(response)
|
||||
return {'data': data}
|
||||
if not q:
|
||||
return {'data': []}
|
||||
try:
|
||||
dui = int(q)
|
||||
if dui >= 2**32:
|
||||
raise ValueError
|
||||
except (TypeError, ValueError):
|
||||
return {'data': []}
|
||||
try:
|
||||
response = self.call('Family', 'readFamilyList', dossierNumber=dui)
|
||||
except APIError:
|
||||
return {'data': []}
|
||||
return {'data': serialize_object(response)}
|
||||
|
||||
@endpoint(
|
||||
display_category='Famille',
|
||||
|
|
|
@ -1726,14 +1726,21 @@ def test_search_family(family_service, con, app):
|
|||
|
||||
|
||||
def test_search_family_dui(family_service, con, app):
|
||||
family_service.add_soap_response('readFamilyList', get_xml_file('R_read_family_list.xml'))
|
||||
soap_mock = family_service.add_soap_response('readFamilyList', get_xml_file('R_read_family_list.xml'))
|
||||
url = get_endpoint('search-family-dui')
|
||||
|
||||
resp = app.get(url + '?q=1312')
|
||||
assert soap_mock.call_count == 1
|
||||
assert resp.json['err'] == 0
|
||||
assert len(resp.json['data']) == 1
|
||||
|
||||
resp = app.get(url + '?q=')
|
||||
assert soap_mock.call_count == 1
|
||||
assert resp.json['err'] == 0
|
||||
assert resp.json['data'] == []
|
||||
|
||||
resp = app.get(url + '?q=abcd')
|
||||
assert soap_mock.call_count == 1
|
||||
assert resp.json['err'] == 0
|
||||
assert resp.json['data'] == []
|
||||
|
||||
|
|
|
@ -126,7 +126,7 @@ class ResponsesSoap:
|
|||
body = response_content
|
||||
else:
|
||||
body = response_content
|
||||
self.requests_mock.add(
|
||||
return self.requests_mock.add(
|
||||
responses.POST,
|
||||
self.address,
|
||||
body=body,
|
||||
|
|
Loading…
Reference in New Issue