Пример #1
0
 def test_get_best_language_exact_match(self):
     """
     Should return exact match if it is in settings.LANGUAGE_URL_MAP
     """
     request = self.factory.get("/")
     prefixer = Prefixer(request)
     eq_(prefixer.get_best_language("de, es"), "de")
Пример #2
0
 def test_get_best_language_exact_match(self):
     """
     Should return exact match if it is in settings.LANGUAGE_URL_MAP
     """
     request = self.factory.get('/')
     prefixer = Prefixer(request)
     assert prefixer.get_best_language('de, es') == 'de'
Пример #3
0
 def test_get_best_language_exact_match(self):
     """
     Should return exact match if it is in settings.LANGUAGE_URL_MAP
     """
     request = self.factory.get('/')
     prefixer = Prefixer(request)
     assert prefixer.get_best_language('de, es') == 'de'
Пример #4
0
 def test_get_best_language_handles_parse_accept_lang_header_error(self):
     """
     Should return None despite error raised by bug described in
     https://code.djangoproject.com/ticket/21078
     """
     request = self.factory.get('/')
     prefixer = Prefixer(request)
     eq_(prefixer.get_best_language('en; q=1,'), None)
Пример #5
0
 def test_get_best_language_no_match(self):
     """
     Should return None if there is no exact match or matching
     prefix
     """
     request = self.factory.get('/')
     prefixer = Prefixer(request)
     assert prefixer.get_best_language('de') is None
Пример #6
0
 def test_get_best_language_handles_parse_accept_lang_header_error(self):
     """
     Should return None despite error raised by bug described in
     https://code.djangoproject.com/ticket/21078
     """
     request = self.factory.get('/')
     prefixer = Prefixer(request)
     eq_(prefixer.get_best_language('en; q=1,'), None)
Пример #7
0
 def test_get_best_language_no_match(self):
     """
     Should return None if there is no exact match or matching
     prefix
     """
     request = self.factory.get("/")
     prefixer = Prefixer(request)
     eq_(prefixer.get_best_language("de"), None)
Пример #8
0
 def test_get_best_language_no_match(self):
     """
     Should return None if there is no exact match or matching
     prefix
     """
     request = self.factory.get('/')
     prefixer = Prefixer(request)
     assert prefixer.get_best_language('de') is None
Пример #9
0
 def test_get_language_valid_lang_param(self):
     """
     Should return lang param value if it is in settings.LANGUAGE_URL_MAP
     """
     request = self.factory.get('/?lang=de')
     eq_(request.GET.get('lang'), 'de')
     ok_('de' in settings.LANGUAGE_URL_MAP)
     prefixer = Prefixer(request)
     eq_(prefixer.get_language(), 'de')
Пример #10
0
 def test_get_language_valid_lang_param(self):
     """
     Should return lang param value if it is in settings.LANGUAGE_URL_MAP
     """
     request = self.factory.get('/?lang=de')
     eq_(request.GET.get('lang'), 'de')
     ok_('de' in settings.LANGUAGE_URL_MAP)
     prefixer = Prefixer(request)
     eq_(prefixer.get_language(), 'de')
Пример #11
0
 def test_get_language_default_language_code(self):
     """
     Should return default set by settings.LANGUAGE_CODE if no 'lang'
     url parameter and no Accept-Language header
     """
     request = self.factory.get("/")
     self.assertFalse("lang" in request.GET)
     self.assertFalse(request.headers.get("Accept-Language"))
     prefixer = Prefixer(request)
     assert prefixer.get_language() == "en-US"
Пример #12
0
 def test_get_language_invalid_lang_param(self):
     """
     Should return default set by settings.LANGUAGE_CODE if lang
     param value is not in settings.LANGUAGE_URL_MAP
     """
     request = self.factory.get('/?lang=de')
     ok_('lang' in request.GET)
     self.assertFalse('de' in settings.LANGUAGE_URL_MAP)
     prefixer = Prefixer(request)
     eq_(prefixer.get_language(), 'en-US')
Пример #13
0
 def test_get_language_default_language_code(self):
     """
     Should return default set by settings.LANGUAGE_CODE if no 'lang'
     url parameter and no Accept-Language header
     """
     request = self.factory.get("/")
     self.assertFalse("lang" in request.GET)
     self.assertFalse(request.META.get("HTTP_ACCEPT_LANGUAGE"))
     prefixer = Prefixer(request)
     eq_(prefixer.get_language(), "en-US")
Пример #14
0
 def test_get_language_invalid_lang_param(self):
     """
     Should return default set by settings.LANGUAGE_CODE if lang
     param value is not in settings.LANGUAGE_URL_MAP
     """
     request = self.factory.get('/?lang=de')
     ok_('lang' in request.GET)
     self.assertFalse('de' in settings.LANGUAGE_URL_MAP)
     prefixer = Prefixer(request)
     eq_(prefixer.get_language(), 'en-US')
Пример #15
0
 def test_get_language_default_language_code(self):
     """
     Should return default set by settings.LANGUAGE_CODE if no 'lang'
     url parameter and no Accept-Language header
     """
     request = self.factory.get('/')
     self.assertFalse('lang' in request.GET)
     self.assertFalse(request.META.get('HTTP_ACCEPT_LANGUAGE'))
     prefixer = Prefixer(request)
     assert prefixer.get_language() == 'en-US'
Пример #16
0
 def test_get_language_default_language_code(self):
     """
     Should return default set by settings.LANGUAGE_CODE if no 'lang'
     url parameter and no Accept-Language header
     """
     request = self.factory.get('/')
     self.assertFalse('lang' in request.GET)
     self.assertFalse(request.META.get('HTTP_ACCEPT_LANGUAGE'))
     prefixer = Prefixer(request)
     assert prefixer.get_language() == 'en-US'
Пример #17
0
 def test_get_language_no_best(self):
     """
     Should return default set by settings.LANGUAGE_CODE if
     get_best_language return value is None
     """
     request = self.factory.get("/")
     request.META["HTTP_ACCEPT_LANGUAGE"] = "de, es"
     prefixer = Prefixer(request)
     prefixer.get_best_language = Mock(return_value=None)
     eq_(prefixer.get_language(), "en-US")
     prefixer.get_best_language.assert_called_once_with("de, es")
Пример #18
0
 def test_get_language_no_best(self):
     """
     Should return default set by settings.LANGUAGE_CODE if
     get_best_language return value is None
     """
     request = self.factory.get('/')
     request.META['HTTP_ACCEPT_LANGUAGE'] = 'de, es'
     prefixer = Prefixer(request)
     prefixer.get_best_language = Mock(return_value=None)
     assert prefixer.get_language() == 'en-US'
     prefixer.get_best_language.assert_called_once_with('de, es')
Пример #19
0
 def test_get_language_returns_best(self):
     """
     Should pass Accept-Language header value to get_best_language
     and return result
     """
     request = self.factory.get('/')
     request.META['HTTP_ACCEPT_LANGUAGE'] = 'de, es'
     prefixer = Prefixer(request)
     prefixer.get_best_language = Mock(return_value='de')
     assert prefixer.get_language() == 'de'
     prefixer.get_best_language.assert_called_once_with('de, es')
Пример #20
0
 def test_get_language_returns_best(self):
     """
     Should pass Accept-Language header value to get_best_language
     and return result
     """
     request = self.factory.get("/")
     request.META["HTTP_ACCEPT_LANGUAGE"] = "de, es"
     prefixer = Prefixer(request)
     prefixer.get_best_language = Mock(return_value="de")
     eq_(prefixer.get_language(), "de")
     prefixer.get_best_language.assert_called_once_with("de, es")
Пример #21
0
 def test_get_language_no_best(self):
     """
     Should return default set by settings.LANGUAGE_CODE if
     get_best_language return value is None
     """
     request = self.factory.get('/')
     request.META['HTTP_ACCEPT_LANGUAGE'] = 'de, es'
     prefixer = Prefixer(request)
     prefixer.get_best_language = Mock(return_value=None)
     assert prefixer.get_language() == 'en-US'
     prefixer.get_best_language.assert_called_once_with('de, es')
Пример #22
0
 def test_get_language_returns_best(self):
     """
     Should pass Accept-Language header value to get_best_language
     and return result
     """
     request = self.factory.get('/')
     request.META['HTTP_ACCEPT_LANGUAGE'] = 'de, es'
     prefixer = Prefixer(request)
     prefixer.get_best_language = Mock(return_value='de')
     assert prefixer.get_language() == 'de'
     prefixer.get_best_language.assert_called_once_with('de, es')
Пример #23
0
 def test_get_language_returns_best(self):
     """
     Should pass Accept-Language header value to get_best_language
     and return result
     """
     request = self.factory.get("/")
     request.META["HTTP_ACCEPT_LANGUAGE"] = "de, es"
     prefixer = Prefixer(request)
     prefixer.get_best_language = Mock(return_value="de")
     assert prefixer.get_language() == "de"
     prefixer.get_best_language.assert_called_once_with("de, es")
Пример #24
0
 def test_prefixer_with_non_supported_locale(self):
     """
     Should set prefixer.locale to a supported locale that repects CANONICAL_LOCALES
     when given a URL with a non-supported locale.
     """
     request = self.factory.get('/en-CA/')
     prefixer = Prefixer(request)
     assert prefixer.locale == 'en-US'
Пример #25
0
 def activate(self, locale):
     """Context manager that temporarily activates a locale."""
     old_prefix = get_url_prefix()
     old_locale = translation.get_language()
     rf = RequestFactory()
     set_url_prefix(Prefixer(rf.get('/%s/' % (locale, ))))
     translation.activate(locale)
     yield
     set_url_prefix(old_prefix)
     translation.activate(old_locale)
Пример #26
0
 def test_get_best_language_prefix_match(self):
     """
     Should return a language with a matching prefix from
     settings.LANGUAGE_URL_MAP + settings.CANONICAL_LOCALES if it exists but
     no exact match does
     """
     request = self.factory.get('/')
     prefixer = Prefixer(request)
     assert prefixer.get_best_language('en') == 'en-US'
     assert prefixer.get_best_language('en-CA') == 'en-US'
     assert prefixer.get_best_language('en-GB') == 'en-GB'
     assert prefixer.get_best_language('en-US') == 'en-US'
     assert prefixer.get_best_language('es') == 'es-ES'
     assert prefixer.get_best_language('es-AR') == 'es-AR'
     assert prefixer.get_best_language('es-CL') == 'es-ES'
     assert prefixer.get_best_language('es-MX') == 'es-ES'
Пример #27
0
 def test_get_best_language_prefix_match(self):
     """
     Should return a language with a matching prefix from
     settings.LANGUAGE_URL_MAP + settings.CANONICAL_LOCALES if it exists but
     no exact match does
     """
     request = self.factory.get("/")
     prefixer = Prefixer(request)
     assert prefixer.get_best_language("en") == "en-US"
     assert prefixer.get_best_language("en-CA") == "en-US"
     assert prefixer.get_best_language("en-GB") == "en-GB"
     assert prefixer.get_best_language("en-US") == "en-US"
     assert prefixer.get_best_language("es") == "es-ES"
     assert prefixer.get_best_language("es-AR") == "es-AR"
     assert prefixer.get_best_language("es-CL") == "es-ES"
     assert prefixer.get_best_language("es-MX") == "es-ES"
Пример #28
0
 def test_get_best_language_prefix_match(self):
     """
     Should return a language with a matching prefix from
     settings.LANGUAGE_URL_MAP + settings.CANONICAL_LOCALES if it exists but
     no exact match does
     """
     request = self.factory.get("/")
     prefixer = Prefixer(request)
     eq_(prefixer.get_best_language("en"), "en-US")
     eq_(prefixer.get_best_language("en-CA"), "en-US")
     eq_(prefixer.get_best_language("en-GB"), "en-US")
     eq_(prefixer.get_best_language("en-US"), "en-US")
     eq_(prefixer.get_best_language("es"), "es-ES")
     eq_(prefixer.get_best_language("es-AR"), "es-AR")
     eq_(prefixer.get_best_language("es-CL"), "es-ES")
     eq_(prefixer.get_best_language("es-MX"), "es-ES")
Пример #29
0
 def test_get_best_language_prefix_match(self):
     """
     Should return a language with a matching prefix from
     settings.LANGUAGE_URL_MAP + settings.CANONICAL_LOCALES if it exists but
     no exact match does
     """
     request = self.factory.get('/')
     prefixer = Prefixer(request)
     assert prefixer.get_best_language('en') == 'en-US'
     assert prefixer.get_best_language('en-CA') == 'en-US'
     assert prefixer.get_best_language('en-GB') == 'en-GB'
     assert prefixer.get_best_language('en-US') == 'en-US'
     assert prefixer.get_best_language('es') == 'es-ES'
     assert prefixer.get_best_language('es-AR') == 'es-AR'
     assert prefixer.get_best_language('es-CL') == 'es-ES'
     assert prefixer.get_best_language('es-MX') == 'es-ES'