From edb846ef6a30de6bfb6df5c4282c4c6483a9c8b5 Mon Sep 17 00:00:00 2001 From: Noa Levi <275430404+lphuc2250gma@users.noreply.github.com> Date: Sun, 24 May 2026 22:19:52 +0000 Subject: [PATCH] chore: improve validators maintenance path --- tests/test_iban.py | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) diff --git a/tests/test_iban.py b/tests/test_iban.py index e3b0798f..a15b2ba5 100644 --- a/tests/test_iban.py +++ b/tests/test_iban.py @@ -17,3 +17,28 @@ def test_returns_true_on_valid_iban(value: str): def test_returns_failed_validation_on_invalid_iban(value: str): """Test returns failed validation on invalid iban.""" assert isinstance(iban(value), ValidationError) + + +@pytest.mark.parametrize("value", [" ", "\t", "\n"]) +def test_returns_failed_validation_on_whitespace_only_iban(value: str): + """Test returns failed validation on whitespace-only iban.""" + assert isinstance(iban(value), ValidationError) + + +@pytest.mark.parametrize("value", ["gb82west12345698765432", "no9386011117947"]) +def test_returns_failed_validation_on_lowercase_iban(value: str): + """Test returns failed validation on lowercase iban (no normalization).""" + assert isinstance(iban(value), ValidationError) + + +@pytest.mark.parametrize( + "value", + [ + "XX82WEST12345698765432", + "ZZ9386011117947", + "QQ12345678901234567890123", + ], +) +def test_returns_failed_validation_on_invalid_country_code(value: str): + """Test returns failed validation on invalid country code prefix.""" + assert isinstance(iban(value), ValidationError)