Skip to content

Commit

Permalink
coverage
Browse files Browse the repository at this point in the history
  • Loading branch information
Tllew committed Apr 24, 2024
1 parent 4309500 commit 9fd18a8
Show file tree
Hide file tree
Showing 2 changed files with 36 additions and 9 deletions.
1 change: 1 addition & 0 deletions exporter/core/organisation/forms.py
Original file line number Diff line number Diff line change
Expand Up @@ -139,6 +139,7 @@ def clean_registration_number(self):
response, status_code = validate_registration_number(self.request, self.cleaned_data)
if status_code != 200:
self.add_error("registration_number", response["errors"]["registration_number"])
return
return self.cleaned_data["registration_number"]


Expand Down
44 changes: 35 additions & 9 deletions unit_tests/exporter/core/organisation/test_forms.py
Original file line number Diff line number Diff line change
@@ -1,5 +1,16 @@
import pytest
from exporter.core.organisation import forms
from core import client


@pytest.fixture
def mock_registration_number_fail(requests_mock):
url = client._build_absolute_uri("/organisations/registration_number")
return requests_mock.post(
url=url,
json={"errors": {"registration_number": ["This registration number is already in use."]}},
status_code=400,
)


@pytest.mark.parametrize(
Expand Down Expand Up @@ -168,20 +179,35 @@ def test_register_details_form_field_validation(


@pytest.mark.parametrize(
"data, valid, error",
"data, valid, error, form_class",
(
(
{},
False,
{
"name": ["Enter a name for your site"],
"address_line_1": ["Enter a real building and street name"],
"city": ["Enter a real city"],
"region": ["Enter a real region"],
"postcode": ["Enter a real postcode"],
"phone_number": ["Enter a telephone number"],
"name": "joe",
"eori_number": "GB205672212000",
"vat_number": "GB123456789",
"sic_number": "12345",
"registration_number": "12345678",
},
False,
{"registration_number": ["This registration number is already in use."]},
forms.RegisterDetailsCommercialUKForm,
),
),
)
def test_registration_number_validation_error(
data, valid, error, form_class, mock_request, mock_registration_number_fail
):
form = form_class(data=data, request=mock_request)
assert form.is_valid() == valid

if not valid:
assert form.errors == error


@pytest.mark.parametrize(
"data, valid, error",
(
(
{
"name": "joe",
Expand Down

0 comments on commit 9fd18a8

Please sign in to comment.