From 2277fcdd232f33464d46cf1b57fd72665aebc9ac Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Thomas=20NO=C3=8BL?= Date: Fri, 26 May 2023 11:45:04 +0200 Subject: [PATCH] api_particulier: normalize birth dates (#77306) --- passerelle/apps/api_particulier/models.py | 5 +++++ tests/test_api_particulier.py | 4 ++++ 2 files changed, 9 insertions(+) diff --git a/passerelle/apps/api_particulier/models.py b/passerelle/apps/api_particulier/models.py index 805b1a5b..28b2b3d3 100644 --- a/passerelle/apps/api_particulier/models.py +++ b/passerelle/apps/api_particulier/models.py @@ -363,6 +363,11 @@ class APIParticulier(BaseResource): ) data['data']['numero_allocataire'] = numero_allocataire data['data']['code_postal'] = code_postal + for kind in 'allocataires', 'enfants': + for person in data['data'].get(kind) or []: + if len(person.get('dateDeNaissance') or '') == 8: + birthdate = person['dateDeNaissance'] + person['dateDeNaissance_iso'] = birthdate[4:] + '-' + birthdate[2:4] + '-' + birthdate[:2] return data category = _('Business Process Connectors') diff --git a/tests/test_api_particulier.py b/tests/test_api_particulier.py index 69364761..9b90d3ec 100644 --- a/tests/test_api_particulier.py +++ b/tests/test_api_particulier.py @@ -319,6 +319,10 @@ def test_situation_familiale(app, resource, mock_api_particulier): '/api-particulier/test/situation-familiale', app, resource, 'situation-familiale', params=params ) assert resp.json['data']['adresse']['codePostalVille'] == '12345 CONDAT' + assert resp.json['data']['enfants'][0]['dateDeNaissance'] == '11122016' + assert resp.json['data']['enfants'][0]['dateDeNaissance_iso'] == '2016-12-11' + assert resp.json['data']['allocataires'][1]['dateDeNaissance'] == '18101969' + assert resp.json['data']['allocataires'][1]['dateDeNaissance_iso'] == '1969-10-18' params['numero_allocataire'] = '11' resp = endpoint_get(