From 3103deac492872868e2206dc3b8a16715faad2fd Mon Sep 17 00:00:00 2001 From: Steven Bal Date: Fri, 18 Oct 2024 16:00:21 +0200 Subject: [PATCH] :white_check_mark: [#234] Add test for DigitaalAdres.adres email validation --- .../api/tests/test_digitaal_adres.py | 50 +++++++++++++++++++ 1 file changed, 50 insertions(+) diff --git a/src/openklant/components/klantinteracties/api/tests/test_digitaal_adres.py b/src/openklant/components/klantinteracties/api/tests/test_digitaal_adres.py index d248faf7..333a90b1 100644 --- a/src/openklant/components/klantinteracties/api/tests/test_digitaal_adres.py +++ b/src/openklant/components/klantinteracties/api/tests/test_digitaal_adres.py @@ -1,3 +1,5 @@ +from django.utils.translation import gettext as _ + from rest_framework import status from vng_api_common.tests import reverse @@ -90,6 +92,54 @@ def test_create_digitaal_adres(self): self.assertEqual(data["adres"], "foobar@example.com") self.assertEqual(data["omschrijving"], "omschrijving") + def test_create_digitaal_adres_email_validation(self): + list_url = reverse("klantinteracties:digitaaladres-list") + data = { + "verstrektDoorBetrokkene": None, + "verstrektDoorPartij": None, + "soortDigitaalAdres": SoortDigitaalAdres.email, + "adres": "invalid", + "omschrijving": "omschrijving", + } + + response = self.client.post(list_url, data) + + self.assertEqual(response.status_code, status.HTTP_400_BAD_REQUEST) + data = response.json() + self.assertEqual( + data["invalidParams"], + [ + { + "name": "adres", + "code": "invalid", + "reason": _("Voer een geldig e-mailadres in."), + } + ], + ) + + digitaal_adres = DigitaalAdresFactory.create( + soort_digitaal_adres=SoortDigitaalAdres.email, adres="foo@bar.com" + ) + detail_url = reverse( + "klantinteracties:digitaaladres-detail", + kwargs={"uuid": str(digitaal_adres.uuid)}, + ) + + response = self.client.patch(detail_url, {"adres": "invalid"}) + + self.assertEqual(response.status_code, status.HTTP_400_BAD_REQUEST) + data = response.json() + self.assertEqual( + data["invalidParams"], + [ + { + "name": "adres", + "code": "invalid", + "reason": _("Voer een geldig e-mailadres in."), + } + ], + ) + def test_update_digitaal_adres(self): betrokkene, betrokkene2 = BetrokkeneFactory.create_batch(2) partij, partij2 = PartijFactory.create_batch(2)