diff --git a/src/validators/__init__.py b/src/validators/__init__.py index 3aceb37..635a835 100644 --- a/src/validators/__init__.py +++ b/src/validators/__init__.py @@ -23,7 +23,7 @@ fr_ssn, ind_aadhar, ind_pan, - ru_inn + ru_inn, ) from .iban import iban from .ip_address import ipv4, ipv6 diff --git a/src/validators/i18n/es.py b/src/validators/i18n/es.py index 4bc6bb6..3d4b1ba 100644 --- a/src/validators/i18n/es.py +++ b/src/validators/i18n/es.py @@ -1,15 +1,15 @@ """Spain.""" # standard -from typing import Dict, Set +from typing import Dict # local from validators.utils import validator -def _nif_nie_validation(value: str, number_by_letter: Dict[str, str], special_cases: Set[str]): +def _nif_nie_validation(value: str, number_by_letter: Dict[str, str]): """Validate if the doi is a NIF or a NIE.""" - if value in special_cases or len(value) != 9: + if len(value) != 9: return False value = value.upper() table = "TRWAGMYFPDXBNJZSQVHLCKE" @@ -104,8 +104,7 @@ def es_nif(value: str, /): (ValidationError): If `value` is an invalid DOI string. """ number_by_letter = {"L": "0", "M": "0", "K": "0"} - special_cases = {"X0000000T", "00000000T", "00000001R"} - return _nif_nie_validation(value, number_by_letter, special_cases) + return _nif_nie_validation(value, number_by_letter) @validator @@ -137,7 +136,7 @@ def es_nie(value: str, /): number_by_letter = {"X": "0", "Y": "1", "Z": "2"} # NIE must must start with X Y or Z if value and value[0] in number_by_letter: - return _nif_nie_validation(value, number_by_letter, {"X0000000T"}) + return _nif_nie_validation(value, number_by_letter) return False diff --git a/src/validators/uri.py b/src/validators/uri.py index 29092e3..84b534e 100644 --- a/src/validators/uri.py +++ b/src/validators/uri.py @@ -68,7 +68,7 @@ def uri(value: str, /): # email if value.startswith("mailto:"): - return email(value[len("mailto:"):]) + return email(value[len("mailto:") :]) # file if value.startswith("file:"): diff --git a/tests/i18n/test_es.py b/tests/i18n/test_es.py index 32f1719..5b1ce01 100644 --- a/tests/i18n/test_es.py +++ b/tests/i18n/test_es.py @@ -94,18 +94,9 @@ def test_returns_true_on_valid_nif(value: str): assert es_nif(value) -@pytest.mark.parametrize( - ("value",), - [ - ("12345",), - ("X0000000T",), - ("00000000T",), - ("00000001R",), - ], -) -def test_returns_false_on_invalid_nif(value: str): +def test_returns_false_on_invalid_nif(): """Test returns false on invalid nif.""" - result = es_nif(value) + result = es_nif("12345") assert isinstance(result, ValidationError) @@ -117,10 +108,13 @@ def test_returns_false_on_invalid_nif(value: str): ("U4839822F",), ("B96817697",), # NIEs + ("X0000000T",), ("X0095892M",), ("X8868108K",), ("X2911154K",), # NIFs + ("00000001R",), + ("00000000T",), ("26643189N",), ("07060225F",), ("49166693F",),
Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.
Alternative Proxies: