﻿id	summary	reporter	owner	description	type	status	component	version	severity	resolution	keywords	cc	stage	has_patch	needs_docs	needs_tests	needs_better_patch	easy	ui_ux
33798	@cache_control test fails after upgrade to 4.0.5	Matt Hegarty	nobody	"This worked ok in 3.2.13 - fails after upgrade to 4.0.5

Test:


{{{
class FaviconTests(SimpleTestCase):
    def test_get(self):
        response = self.client.get(""/favicon.ico"")
        self.assertEqual(response.status_code, HTTPStatus.OK)
        self.assertEqual(response[""Cache-Control""], ""max-age=86400, immutable, public"")
        self.assertEqual(response[""Content-Type""], ""image/png"")
        content = b"""".join(response.streaming_content)
        self.assertGreater(len(content), 0)
}}}


View:



{{{
from django.conf import settings
from django.http import FileResponse
from django.views.decorators.cache import cache_control
from django.views.generic.base import View

class FaviconView(View):
    @cache_control(max_age=60 * 60 * 24, immutable=True, public=True)
    def get(self, request, *args, **kwargs):
        file = (
            settings.BASE_DIR / settings.STATIC_ROOT / ""img"" / ""favicon-32x32.png""
        ).open(""rb"")
        return FileResponse(file)
}}}

Error:

TypeError: cache_control didn't receive an HttpRequest. If you are decorating a classmethod, be sure to use @method_decorator.

"	Uncategorized	closed	Uncategorized	4.0	Normal	invalid	cache_control decorator		Unreviewed	0	0	0	0	0	0
