forked from cardosofelipe/fast-next-template
Refactor locale validation and update style consistency across schemas, tests, and migrations
- Replaced `SUPPORTED_LOCALES` with `supported_locales` for naming consistency. - Applied formatting improvements to multiline statements for better readability. - Cleaned up redundant comments and streamlined test assertions.
This commit is contained in:
@@ -67,9 +67,7 @@ class TestParseAcceptLanguage:
|
||||
|
||||
def test_parse_complex_header(self):
|
||||
"""Test complex Accept-Language header with multiple locales"""
|
||||
result = parse_accept_language(
|
||||
"it-IT,it;q=0.9,en-US;q=0.8,en;q=0.7,fr;q=0.6"
|
||||
)
|
||||
result = parse_accept_language("it-IT,it;q=0.9,en-US;q=0.8,en;q=0.7,fr;q=0.6")
|
||||
assert result == "it-it"
|
||||
|
||||
def test_parse_whitespace_handling(self):
|
||||
@@ -199,9 +197,7 @@ class TestGetLocale:
|
||||
assert result == "en"
|
||||
|
||||
@pytest.mark.asyncio
|
||||
async def test_locale_from_accept_language_header(
|
||||
self, async_user_without_locale
|
||||
):
|
||||
async def test_locale_from_accept_language_header(self, async_user_without_locale):
|
||||
"""Test locale detection from Accept-Language header when user has no preference"""
|
||||
# Mock request with Italian Accept-Language (it-IT has highest priority)
|
||||
mock_request = MagicMock()
|
||||
|
||||
@@ -334,11 +334,7 @@ class TestLocaleValidation:
|
||||
def test_locale_in_user_update_with_other_fields(self):
|
||||
"""Test locale validation works when combined with other fields"""
|
||||
# Valid locale with other fields
|
||||
user = UserUpdate(
|
||||
first_name="Mario",
|
||||
last_name="Rossi",
|
||||
locale="it"
|
||||
)
|
||||
user = UserUpdate(first_name="Mario", last_name="Rossi", locale="it")
|
||||
assert user.locale == "it"
|
||||
assert user.first_name == "Mario"
|
||||
|
||||
@@ -347,7 +343,7 @@ class TestLocaleValidation:
|
||||
UserUpdate(
|
||||
first_name="Pierre",
|
||||
last_name="Dupont",
|
||||
locale="fr" # Unsupported
|
||||
locale="fr", # Unsupported
|
||||
)
|
||||
|
||||
def test_supported_locales_list(self):
|
||||
@@ -357,7 +353,9 @@ class TestLocaleValidation:
|
||||
# Expected output (normalized to lowercase)
|
||||
expected_outputs = ["en", "it", "en-us", "en-gb", "it-it"]
|
||||
|
||||
for input_locale, expected_output in zip(input_locales, expected_outputs):
|
||||
for input_locale, expected_output in zip(
|
||||
input_locales, expected_outputs, strict=True
|
||||
):
|
||||
user = UserUpdate(locale=input_locale)
|
||||
assert user.locale == expected_output
|
||||
|
||||
|
||||
Reference in New Issue
Block a user