fix(data-extraction): Handle malformed date_of_birth fields

This commit is contained in:
TrisNol 2023-10-07 17:01:34 +02:00
parent 7500895982
commit 84d0139531
3 changed files with 542 additions and 509 deletions

View File

@ -124,7 +124,7 @@ class PersonToCompanyRelationship(CompanyRelationship):
"""Extension of CompanyRelationship with extras for Person."""
name: PersonName
date_of_birth: str
date_of_birth: str | None
@dataclass

View File

@ -82,6 +82,27 @@ def test_parse_stakeholder_person() -> None:
assert transform.parse_stakeholder(data) == expected_result
def test_parse_stakeholder_person_missing_date_of_birth() -> None:
data = {
"Beteiligter": {
"Natuerliche_Person": {
"Voller_Name": {"Vorname": "Stephen", "Nachname": "King"},
"Anschrift": {"Ort": "Maine"},
"Geburt": {"Geburtsdatum": {"@xsi:nil": "true"}},
}
},
"Rolle": {"Rollenbezeichnung": {"content": "Geschäftsleiter(in)"}},
}
expected_result = PersonToCompanyRelationship(
role=RelationshipRoleEnum.GESCHAEFTSLEITER, # type: ignore
date_of_birth=None,
name=PersonName(**{"firstname": "Stephen", "lastname": "King"}),
type=CompanyRelationshipEnum.PERSON,
location=Location(**{"city": "Maine"}),
)
assert transform.parse_stakeholder(data) == expected_result
def test_parse_stakeholder_org() -> None:
data = {
"Beteiligter": {