Skip to content

Commit b993227

Browse files
authored
Accept current SLE, XCG and ZWG currency codes
1 parent b9f806a commit b993227

1 file changed

Lines changed: 20 additions & 0 deletions

File tree

‎tests/test_country.py‎

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -82,3 +82,23 @@ def test_returns_failed_validation_invalid_currency(
8282
assert isinstance(
8383
currency(value, skip_symbols=skip_symbols, ignore_case=ignore_case), ValidationError
8484
)
85+
86+
87+
@pytest.mark.parametrize("value", ["SLE", "XCG", "ZWG"])
88+
@pytest.mark.parametrize("skip_symbols", [True, False])
89+
def test_accepts_current_currency_codes(value: str, skip_symbols: bool):
90+
"""Accept the current Leone, Caribbean guilder and Zimbabwe Gold codes."""
91+
assert currency(value, skip_symbols=skip_symbols) is True
92+
93+
94+
@pytest.mark.parametrize("value", ["sle", "xcg", "zwg"])
95+
def test_current_currency_codes_respect_ignore_case(value: str):
96+
"""Only accept lowercase currency codes when case-insensitive matching is enabled."""
97+
assert isinstance(currency(value), ValidationError)
98+
assert currency(value, ignore_case=True) is True
99+
100+
101+
@pytest.mark.parametrize("value", ["SLL", "ANG", "ZWL"])
102+
def test_preserves_legacy_currency_codes(value: str):
103+
"""Keep previously accepted codes when adding their current replacements."""
104+
assert currency(value) is True

0 commit comments

Comments
 (0)