diff --git a/recordprocessor/src/utils_for_fhir_conversion.py b/recordprocessor/src/utils_for_fhir_conversion.py index 8e91ed63a5..ebc44a57d6 100644 --- a/recordprocessor/src/utils_for_fhir_conversion.py +++ b/recordprocessor/src/utils_for_fhir_conversion.py @@ -68,9 +68,9 @@ def date(date: str) -> str: @staticmethod def gender_code(code: any) -> any: - """Converts gender code to fhir gender if the code is recognised. Otherwise returns the original code.""" + """Converts gender code to fhir gender if the code is recognised. Otherwise returns 'invalid'.""" code_to_fhir = {"1": "male", "2": "female", "9": "other", "0": "unknown"} - return code_to_fhir.get(code, code) + return code_to_fhir.get(code, "invalid") @staticmethod def boolean(value: any) -> any: diff --git a/recordprocessor/tests/test_utils_for_fhir_conversion.py b/recordprocessor/tests/test_utils_for_fhir_conversion.py index 7b77b2ad56..01efd42a9d 100644 --- a/recordprocessor/tests/test_utils_for_fhir_conversion.py +++ b/recordprocessor/tests/test_utils_for_fhir_conversion.py @@ -88,8 +88,8 @@ def test_convert_gender_code(self): self.assertEqual(Convert.gender_code(code), expected) # Invalid gender codes - for value in [1, "invalid", None]: - self.assertEqual(Convert.gender_code(value), value) + for value in [1, "3", "1290", "male", "invalid", None]: + self.assertEqual(Convert.gender_code(value), "invalid") def test_convert_boolean(self): """