summaryrefslogtreecommitdiff
path: root/tests/i18n
diff options
context:
space:
mode:
authorSergio <smaisidoro@gmail.com>2022-10-02 13:59:13 +0300
committerMariusz Felisiak <felisiak.mariusz@gmail.com>2022-10-13 10:38:26 +0200
commit94e7f471c4edef845a4fe5e3160132997b4cca81 (patch)
treee470a0ca3cb2ac861b2ac62b805c042381ba3c72 /tests/i18n
parent004f985b918d5ea36fbed9b050459dd22edaf396 (diff)
downloaddjango-94e7f471c4edef845a4fe5e3160132997b4cca81.tar.gz
Fixed #34069 -- Made LocaleMiddleware respect language from requests when i18n patterns are used.
Diffstat (limited to 'tests/i18n')
-rw-r--r--tests/i18n/tests.py21
1 files changed, 16 insertions, 5 deletions
diff --git a/tests/i18n/tests.py b/tests/i18n/tests.py
index 53585a1871..1fec6009a5 100644
--- a/tests/i18n/tests.py
+++ b/tests/i18n/tests.py
@@ -2137,8 +2137,22 @@ class UnprefixedDefaultLanguageTests(SimpleTestCase):
response = self.client.get("/fr/simple/")
self.assertEqual(response.content, b"Oui")
- def test_unprefixed_language_other_than_accept_language(self):
+ def test_unprefixed_language_with_accept_language(self):
+ """'Accept-Language' is respected."""
response = self.client.get("/simple/", HTTP_ACCEPT_LANGUAGE="fr")
+ self.assertRedirects(response, "/fr/simple/")
+
+ def test_unprefixed_language_with_cookie_language(self):
+ """A language set in the cookies is respected."""
+ self.client.cookies.load({settings.LANGUAGE_COOKIE_NAME: "fr"})
+ response = self.client.get("/simple/")
+ self.assertRedirects(response, "/fr/simple/")
+
+ def test_unprefixed_language_with_non_valid_language(self):
+ response = self.client.get("/simple/", HTTP_ACCEPT_LANGUAGE="fi")
+ self.assertEqual(response.content, b"Yes")
+ self.client.cookies.load({settings.LANGUAGE_COOKIE_NAME: "fi"})
+ response = self.client.get("/simple/")
self.assertEqual(response.content, b"Yes")
def test_page_with_dash(self):
@@ -2214,10 +2228,7 @@ class CountrySpecificLanguageTests(SimpleTestCase):
def test_get_language_from_request_null(self):
lang = trans_null.get_language_from_request(None)
- self.assertEqual(lang, "en")
- with override_settings(LANGUAGE_CODE="de"):
- lang = trans_null.get_language_from_request(None)
- self.assertEqual(lang, "de")
+ self.assertEqual(lang, None)
def test_specific_language_codes(self):
# issue 11915