Commit e8a6fee6 authored by Aymeric Augustin's avatar Aymeric Augustin
Browse files

Fixed a CacheKeyWarning under Windows.

git-svn-id: http://code.djangoproject.com/svn/django/trunk@17277 bcc190cf-cafb-0310-a4f2-bffc1f526a37
parent b0457837
Loading
Loading
Loading
Loading
+3 −1
Original line number Diff line number Diff line
@@ -165,7 +165,9 @@ def _i18n_cache_key_suffix(request, cache_key):
        # which in turn can also fall back to settings.LANGUAGE_CODE
        cache_key += '.%s' % getattr(request, 'LANGUAGE_CODE', get_language())
    if settings.USE_TZ:
        cache_key += '.%s' % get_current_timezone_name()
        # Windows uses non-standard timezone names that may include spaces,
        # which triggers CacheKeyWarning.
        cache_key += '.%s' % get_current_timezone_name().replace(' ', '_')
    return cache_key

def _generate_cache_key(request, method, headerlist, key_prefix):
+2 −2
Original line number Diff line number Diff line
@@ -1270,7 +1270,7 @@ class CacheI18nTest(TestCase):
    @override_settings(USE_I18N=False, USE_L10N=False, USE_TZ=True)
    def test_cache_key_i18n_timezone(self):
        request = self._get_request()
        tz = timezone.get_current_timezone_name()
        tz = timezone.get_current_timezone_name().replace(' ', '_')
        response = HttpResponse()
        key = learn_cache_key(request, response)
        self.assertIn(tz, key, "Cache keys should include the time zone name when time zones are active")
@@ -1281,7 +1281,7 @@ class CacheI18nTest(TestCase):
    def test_cache_key_no_i18n (self):
        request = self._get_request()
        lang = translation.get_language()
        tz = timezone.get_current_timezone_name()
        tz = timezone.get_current_timezone_name().replace(' ', '_')
        response = HttpResponse()
        key = learn_cache_key(request, response)
        self.assertNotIn(lang, key, "Cache keys shouldn't include the language name when i18n isn't active")