Skip to content

Commit

Permalink
[#309] Fix validate_postal_code
Browse files Browse the repository at this point in the history
  • Loading branch information
danielmursa-dev committed Feb 12, 2025
1 parent eadb3ec commit 089a87b
Show file tree
Hide file tree
Showing 7 changed files with 41 additions and 56 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -77,12 +77,11 @@ class Migration(migrations.Migration):
field=models.CharField(
blank=True,
help_text="Postcode van het adres (indien het een Nederlands adres betreft zonder BAG-id).",
max_length=6,
max_length=7,
null=True,
validators=[
openklant.utils.validators.CustomRegexValidator(
message="Ongeldige postcode",
regex="^[1-9][0-9]{3} ?[a-zA-Z]{2}$",
message="Ongeldige postcode", regex="^[1-9][0-9]{3} ?[A-Z]{2}$"
)
],
verbose_name="postcode",
Expand Down Expand Up @@ -139,12 +138,11 @@ class Migration(migrations.Migration):
field=models.CharField(
blank=True,
help_text="Postcode van het adres (indien het een Nederlands adres betreft zonder BAG-id).",
max_length=6,
max_length=7,
null=True,
validators=[
openklant.utils.validators.CustomRegexValidator(
message="Ongeldige postcode",
regex="^[1-9][0-9]{3} ?[a-zA-Z]{2}$",
message="Ongeldige postcode", regex="^[1-9][0-9]{3} ?[A-Z]{2}$"
)
],
verbose_name="postcode",
Expand Down Expand Up @@ -203,11 +201,10 @@ class Migration(migrations.Migration):
field=models.CharField(
blank=True,
help_text="Postcode van het adres (indien het een Nederlands adres betreft zonder BAG-id).",
max_length=6,
max_length=7,
validators=[
openklant.utils.validators.CustomRegexValidator(
message="Ongeldige postcode",
regex="^[1-9][0-9]{3} ?[a-zA-Z]{2}$",
message="Ongeldige postcode", regex="^[1-9][0-9]{3} ?[A-Z]{2}$"
)
],
verbose_name="postcode",
Expand Down Expand Up @@ -260,11 +257,10 @@ class Migration(migrations.Migration):
field=models.CharField(
blank=True,
help_text="Postcode van het adres (indien het een Nederlands adres betreft zonder BAG-id).",
max_length=6,
max_length=7,
validators=[
openklant.utils.validators.CustomRegexValidator(
message="Ongeldige postcode",
regex="^[1-9][0-9]{3} ?[a-zA-Z]{2}$",
message="Ongeldige postcode", regex="^[1-9][0-9]{3} ?[A-Z]{2}$"
)
],
verbose_name="postcode",
Expand Down
8 changes: 4 additions & 4 deletions src/openklant/components/contactgegevens/openapi.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -403,8 +403,8 @@ components:
type: string
description: Postcode van het adres (indien het een Nederlands adres betreft
zonder BAG-id).
pattern: ^[1-9][0-9]{3} ?[a-zA-Z]{2}$
maxLength: 6
pattern: ^[1-9][0-9]{3} ?[A-Z]{2}$
maxLength: 7
stad:
type: string
description: Stad van het adres (indien het een Nederlands adres betreft
Expand Down Expand Up @@ -690,8 +690,8 @@ components:
type: string
description: Postcode van het adres (indien het een Nederlands adres betreft
zonder BAG-id).
pattern: ^[1-9][0-9]{3} ?[a-zA-Z]{2}$
maxLength: 6
pattern: ^[1-9][0-9]{3} ?[A-Z]{2}$
maxLength: 7
stad:
type: string
description: Stad van het adres (indien het een Nederlands adres betreft
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -97,12 +97,11 @@ class Migration(migrations.Migration):
field=models.CharField(
blank=True,
help_text="Postcode van het adres (indien het een Nederlands adres betreft zonder BAG-id).",
max_length=6,
max_length=7,
null=True,
validators=[
openklant.utils.validators.CustomRegexValidator(
message="Ongeldige postcode",
regex="^[1-9][0-9]{3} ?[a-zA-Z]{2}$",
message="Ongeldige postcode", regex="^[1-9][0-9]{3} ?[A-Z]{2}$"
)
],
verbose_name="postcode",
Expand Down Expand Up @@ -159,12 +158,11 @@ class Migration(migrations.Migration):
field=models.CharField(
blank=True,
help_text="Postcode van het adres (indien het een Nederlands adres betreft zonder BAG-id).",
max_length=6,
max_length=7,
null=True,
validators=[
openklant.utils.validators.CustomRegexValidator(
message="Ongeldige postcode",
regex="^[1-9][0-9]{3} ?[a-zA-Z]{2}$",
message="Ongeldige postcode", regex="^[1-9][0-9]{3} ?[A-Z]{2}$"
)
],
verbose_name="postcode",
Expand Down Expand Up @@ -221,12 +219,11 @@ class Migration(migrations.Migration):
field=models.CharField(
blank=True,
help_text="Postcode van het adres (indien het een Nederlands adres betreft zonder BAG-id).",
max_length=6,
max_length=7,
null=True,
validators=[
openklant.utils.validators.CustomRegexValidator(
message="Ongeldige postcode",
regex="^[1-9][0-9]{3} ?[a-zA-Z]{2}$",
message="Ongeldige postcode", regex="^[1-9][0-9]{3} ?[A-Z]{2}$"
)
],
verbose_name="postcode",
Expand Down Expand Up @@ -283,12 +280,11 @@ class Migration(migrations.Migration):
field=models.CharField(
blank=True,
help_text="Postcode van het adres (indien het een Nederlands adres betreft zonder BAG-id).",
max_length=6,
max_length=7,
null=True,
validators=[
openklant.utils.validators.CustomRegexValidator(
message="Ongeldige postcode",
regex="^[1-9][0-9]{3} ?[a-zA-Z]{2}$",
message="Ongeldige postcode", regex="^[1-9][0-9]{3} ?[A-Z]{2}$"
)
],
verbose_name="postcode",
Expand Down Expand Up @@ -347,11 +343,10 @@ class Migration(migrations.Migration):
field=models.CharField(
blank=True,
help_text="Postcode van het adres (indien het een Nederlands adres betreft zonder BAG-id).",
max_length=6,
max_length=7,
validators=[
openklant.utils.validators.CustomRegexValidator(
message="Ongeldige postcode",
regex="^[1-9][0-9]{3} ?[a-zA-Z]{2}$",
message="Ongeldige postcode", regex="^[1-9][0-9]{3} ?[A-Z]{2}$"
)
],
verbose_name="postcode",
Expand Down Expand Up @@ -404,11 +399,10 @@ class Migration(migrations.Migration):
field=models.CharField(
blank=True,
help_text="Postcode van het adres (indien het een Nederlands adres betreft zonder BAG-id).",
max_length=6,
max_length=7,
validators=[
openklant.utils.validators.CustomRegexValidator(
message="Ongeldige postcode",
regex="^[1-9][0-9]{3} ?[a-zA-Z]{2}$",
message="Ongeldige postcode", regex="^[1-9][0-9]{3} ?[A-Z]{2}$"
)
],
verbose_name="postcode",
Expand Down Expand Up @@ -461,11 +455,10 @@ class Migration(migrations.Migration):
field=models.CharField(
blank=True,
help_text="Postcode van het adres (indien het een Nederlands adres betreft zonder BAG-id).",
max_length=6,
max_length=7,
validators=[
openklant.utils.validators.CustomRegexValidator(
message="Ongeldige postcode",
regex="^[1-9][0-9]{3} ?[a-zA-Z]{2}$",
message="Ongeldige postcode", regex="^[1-9][0-9]{3} ?[A-Z]{2}$"
)
],
verbose_name="postcode",
Expand Down Expand Up @@ -518,11 +511,10 @@ class Migration(migrations.Migration):
field=models.CharField(
blank=True,
help_text="Postcode van het adres (indien het een Nederlands adres betreft zonder BAG-id).",
max_length=6,
max_length=7,
validators=[
openklant.utils.validators.CustomRegexValidator(
message="Ongeldige postcode",
regex="^[1-9][0-9]{3} ?[a-zA-Z]{2}$",
message="Ongeldige postcode", regex="^[1-9][0-9]{3} ?[A-Z]{2}$"
)
],
verbose_name="postcode",
Expand Down
16 changes: 8 additions & 8 deletions src/openklant/components/klantinteracties/openapi.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -3265,8 +3265,8 @@ components:
type: string
description: Postcode van het adres (indien het een Nederlands adres betreft
zonder BAG-id).
pattern: ^[1-9][0-9]{3} ?[a-zA-Z]{2}$
maxLength: 6
pattern: ^[1-9][0-9]{3} ?[A-Z]{2}$
maxLength: 7
stad:
type: string
description: Stad van het adres (indien het een Nederlands adres betreft
Expand Down Expand Up @@ -3422,8 +3422,8 @@ components:
type: string
description: Postcode van het adres (indien het een Nederlands adres betreft
zonder BAG-id).
pattern: ^[1-9][0-9]{3} ?[a-zA-Z]{2}$
maxLength: 6
pattern: ^[1-9][0-9]{3} ?[A-Z]{2}$
maxLength: 7
stad:
type: string
description: Stad van het adres (indien het een Nederlands adres betreft
Expand Down Expand Up @@ -4744,8 +4744,8 @@ components:
type: string
description: Postcode van het adres (indien het een Nederlands adres betreft
zonder BAG-id).
pattern: ^[1-9][0-9]{3} ?[a-zA-Z]{2}$
maxLength: 6
pattern: ^[1-9][0-9]{3} ?[A-Z]{2}$
maxLength: 7
stad:
type: string
description: Stad van het adres (indien het een Nederlands adres betreft
Expand Down Expand Up @@ -4800,8 +4800,8 @@ components:
type: string
description: Postcode van het adres (indien het een Nederlands adres betreft
zonder BAG-id).
pattern: ^[1-9][0-9]{3} ?[a-zA-Z]{2}$
maxLength: 6
pattern: ^[1-9][0-9]{3} ?[A-Z]{2}$
maxLength: 7
stad:
type: string
description: Stad van het adres (indien het een Nederlands adres betreft
Expand Down
2 changes: 1 addition & 1 deletion src/openklant/components/utils/mixins.py
Original file line number Diff line number Diff line change
Expand Up @@ -103,7 +103,7 @@ def create_prefixed_mixin(prefix: str):
"Postcode van het adres (indien het een Nederlands adres betreft zonder BAG-id)."
),
validators=[validate_postal_code],
max_length=6,
max_length=7,
blank=True,
),
"stad": models.CharField(
Expand Down
9 changes: 3 additions & 6 deletions src/openklant/utils/tests/test_validators.py
Original file line number Diff line number Diff line change
Expand Up @@ -49,6 +49,7 @@ def test_validate_postal_code(self):
"1000 AAA",
"1000AAA",
"0000aa",
"0000 aa",
"0999aa",
"1000 aa",
"1000 aaa",
Expand All @@ -57,6 +58,8 @@ def test_validate_postal_code(self):
"1111,a",
'1111"a',
'1111"aa',
"1111 Aa",
"1111 aA",
]
for invalid_postal_code in invalid_postal_codes:
self.assertRaisesMessage(
Expand All @@ -68,12 +71,6 @@ def test_validate_postal_code(self):

self.assertIsNone(validate_postal_code("1015CJ"))
self.assertIsNone(validate_postal_code("1015 CJ"))
self.assertIsNone(validate_postal_code("1015cj"))
self.assertIsNone(validate_postal_code("1015 cj"))
self.assertIsNone(validate_postal_code("1015Cj"))
self.assertIsNone(validate_postal_code("1015 Cj"))
self.assertIsNone(validate_postal_code("1015cJ"))
self.assertIsNone(validate_postal_code("1015 cJ"))

def test_validate_phone_number(self):
valid_phone_numbers = [
Expand Down
2 changes: 1 addition & 1 deletion src/openklant/utils/validators.py
Original file line number Diff line number Diff line change
Expand Up @@ -59,7 +59,7 @@ def __call__(self, value):


validate_postal_code = CustomRegexValidator(
regex="^[1-9][0-9]{3} ?[a-zA-Z]{2}$", message=_("Ongeldige postcode")
regex="^[1-9][0-9]{3} ?[A-Z]{2}$", message=_("Ongeldige postcode")
)

# Doesn't truely validate if IBAN is valid but validated the basic pattern.
Expand Down

0 comments on commit 089a87b

Please sign in to comment.