summaryrefslogtreecommitdiff
path: root/tests
diff options
context:
space:
mode:
Diffstat (limited to 'tests')
-rw-r--r--tests/i18n/tests.py20
1 files changed, 20 insertions, 0 deletions
diff --git a/tests/i18n/tests.py b/tests/i18n/tests.py
index 8248122a97..7d81f2a07d 100644
--- a/tests/i18n/tests.py
+++ b/tests/i18n/tests.py
@@ -1424,6 +1424,26 @@ class MiscTests(SimpleTestCase):
r.META = {'HTTP_ACCEPT_LANGUAGE': 'zh-my,en'}
self.assertEqual(get_language_from_request(r), 'zh-hans')
+ def test_subsequent_code_fallback_language(self):
+ """
+ Subsequent language codes should be used when the language code is not
+ supported.
+ """
+ tests = [
+ ('zh-Hans-CN', 'zh-hans'),
+ ('zh-hans-mo', 'zh-hans'),
+ ('zh-hans-HK', 'zh-hans'),
+ ('zh-Hant-HK', 'zh-hant'),
+ ('zh-hant-tw', 'zh-hant'),
+ ('zh-hant-SG', 'zh-hant'),
+ ]
+ r = self.rf.get('/')
+ r.COOKIES = {}
+ for value, expected in tests:
+ with self.subTest(value=value):
+ r.META = {'HTTP_ACCEPT_LANGUAGE': f'{value},en'}
+ self.assertEqual(get_language_from_request(r), expected)
+
def test_parse_language_cookie(self):
"""
Now test that we parse language preferences stored in a cookie correctly.