toulouse-maelis: allow to send an empty dietcode (#71643)

This commit is contained in:
Nicolas Roche 2022-11-22 06:50:57 +01:00
parent f05c71c838
commit 52f32334a7
2 changed files with 3 additions and 17 deletions

View File

@ -289,7 +289,7 @@ class ToulouseMaelis(BaseResource, HTTPResource):
data = data[key]
if 'dietcode' in data:
self.assert_post_data_in_referential('DietCode', post_data, keys + ['dietcode'])
self.assert_post_data_in_referential('DietCode', post_data, keys + ['dietcode'], required=False)
if 'paiInfoBean' in data:
self.assert_child_pai_payoad_in_referential(post_data, keys + ['paiInfoBean'])
if 'medicalRecord' in data:
@ -1053,7 +1053,7 @@ class ToulouseMaelis(BaseResource, HTTPResource):
)
def update_child_dietcode(self, request, NameID, child_id, dietcode):
self.get_link(NameID)
self.assert_key_in_referential('DietCode', dietcode, 'dietcode parameter')
self.assert_key_in_referential('DietCode', dietcode, 'dietcode parameter', required=False)
self.call('Family', 'createOrUpdateChildDiet', personNumber=child_id, code=dietcode)
return {'data': 'ok'}

View File

@ -2616,19 +2616,6 @@ def test_update_child_dietcode_not_linked_error(con, app):
assert resp.json['err_desc'] == 'User not linked to family'
@mock.patch('passerelle.utils.Request.get')
@mock.patch('passerelle.utils.Request.post')
def test_update_child_dietcode_empty_referential_key_error(mocked_post, mocked_get, con, app):
mocked_get.return_value = FAMILY_SERVICE_WSDL
mocked_post.side_effect = [READ_DIETCODE, UPDATE_DIETCODE]
url = get_endpoint('update-child-dietcode')
Link.objects.create(resource=con, family_id='1312', name_id='local')
resp = app.post_json(url + '?NameID=local&child_id=613878&dietcode=')
assert resp.json['err'] == 'field-required'
assert resp.json['err_desc'] == "dietcode parameter is required and could not be None"
@mock.patch('passerelle.utils.Request.get')
@mock.patch('passerelle.utils.Request.post')
def test_update_child_dietcode_wrong_referential_key_error(mocked_post, mocked_get, con, app):
@ -2640,8 +2627,7 @@ def test_update_child_dietcode_wrong_referential_key_error(mocked_post, mocked_g
resp = app.post_json(url + '?NameID=local&child_id=613878&dietcode=plop')
assert resp.json['err'] == 'wrong-key'
assert (
resp.json['err_desc']
== "dietcode parameter key value 'plop' do not belong to 'DietCode' required referential"
resp.json['err_desc'] == "dietcode parameter key value 'plop' do not belong to 'DietCode' referential"
)