diff --git a/src/brreg/enhetsregisteret/_client.py b/src/brreg/enhetsregisteret/_client.py index 68420e9..f76a602 100644 --- a/src/brreg/enhetsregisteret/_client.py +++ b/src/brreg/enhetsregisteret/_client.py @@ -121,7 +121,7 @@ def get_roller( self, organisasjonsnummer: Organisasjonsnummer, ) -> list[RolleGruppe]: - """Get :class:`Enhet` given an organization number.""" + """Get a list of :class:`RolleGruppe` given an organization number.""" orgnr = OrganisasjonsnummerValidator.validate_python(organisasjonsnummer) with error_handler(): res = self._client.get( diff --git a/src/brreg/enhetsregisteret/_queries.py b/src/brreg/enhetsregisteret/_queries.py index 3f21c8a..8069a92 100644 --- a/src/brreg/enhetsregisteret/_queries.py +++ b/src/brreg/enhetsregisteret/_queries.py @@ -87,7 +87,7 @@ class EnhetQuery(Query): ) #: Hvorvidt enheten er registrert i Foretaksregisteret - registert_i_foretaksregisteret: Optional[bool] = Field( + registrert_i_foretaksregisteret: Optional[bool] = Field( default=None, serialization_alias="registrertIForetaksregisteret", ) @@ -111,8 +111,8 @@ class EnhetQuery(Query): ) #: Hvorvidt enheten er registrert som under tvangsavvikling eller - #: tvangsopplosning - under_tvangsavvikling_eller_trangsopplosning: Optional[bool] = None + #: tvangsoppløsning + under_tvangsavvikling_eller_tvangsopplosning: Optional[bool] = None #: Hvorvidt enheten er registrert som under avvikling under_avvikling: Optional[bool] = None diff --git a/src/brreg/enhetsregisteret/_types.py b/src/brreg/enhetsregisteret/_types.py index 518a8d1..4fb821a 100644 --- a/src/brreg/enhetsregisteret/_types.py +++ b/src/brreg/enhetsregisteret/_types.py @@ -41,7 +41,7 @@ Organisasjonsnummer = Annotated[ str, - BeforeValidator(lambda v: v.replace(" ", "")), + BeforeValidator(lambda v: str(v).replace(" ", "").zfill(9)), Field(min_length=9, max_length=9, pattern=r"^\d{9}$"), ] OrganisasjonsnummerValidator: TypeAdapter[Organisasjonsnummer] = TypeAdapter( diff --git a/tests/enhetsregisteret/test_types.py b/tests/enhetsregisteret/test_types.py index 5b93fec..01272f8 100644 --- a/tests/enhetsregisteret/test_types.py +++ b/tests/enhetsregisteret/test_types.py @@ -44,16 +44,18 @@ def test_kommunenummer( [ ("123456789", "123456789", None), ("123 456 789", "123456789", None), + # Int input: normal case + (123456789, "123456789", None), + # Int input: with leading zeros lost, should be zero-padded + (12345678, "012345678", None), + (1234567, "001234567", None), + # String input: short strings are also zero-padded + ("12345678", "012345678", None), ( "1234567890", None, "Value should have at most 9 items after validation, not 10", ), - ( - "12345678", - None, - "Value should have at least 9 items after validation, not 8", - ), ("aaabbbccc", None, r"String should match pattern '\^\\d\{9\}\$'"), ], )