mirror of
https://github.com/django/django.git
synced 2025-10-23 21:59:11 +00:00
Fixed #23531 -- Added CommonMiddleware.response_redirect_class.
This commit is contained in:
committed by
Tim Graham
parent
83daf53636
commit
df0523debc
@@ -9,7 +9,10 @@ from unittest import skipIf
|
||||
|
||||
from django.conf import settings
|
||||
from django.core import mail
|
||||
from django.http import HttpRequest, HttpResponse, StreamingHttpResponse
|
||||
from django.http import (
|
||||
HttpRequest, HttpResponse, StreamingHttpResponse, HttpResponsePermanentRedirect,
|
||||
HttpResponseRedirect,
|
||||
)
|
||||
from django.middleware.clickjacking import XFrameOptionsMiddleware
|
||||
from django.middleware.common import CommonMiddleware, BrokenLinkEmailsMiddleware
|
||||
from django.middleware.http import ConditionalGetMiddleware
|
||||
@@ -242,6 +245,23 @@ class CommonMiddlewareTest(TestCase):
|
||||
response = CommonMiddleware().process_request(request)
|
||||
self.assertEqual(response.status_code, 301)
|
||||
|
||||
def test_response_redirect_class(self):
|
||||
request = self._get_request('slash')
|
||||
r = CommonMiddleware().process_request(request)
|
||||
self.assertEqual(r.status_code, 301)
|
||||
self.assertEqual(r.url, 'http://testserver/slash/')
|
||||
self.assertIsInstance(r, HttpResponsePermanentRedirect)
|
||||
|
||||
def test_response_redirect_class_subclass(self):
|
||||
class MyCommonMiddleware(CommonMiddleware):
|
||||
response_redirect_class = HttpResponseRedirect
|
||||
|
||||
request = self._get_request('slash')
|
||||
r = MyCommonMiddleware().process_request(request)
|
||||
self.assertEqual(r.status_code, 302)
|
||||
self.assertEqual(r.url, 'http://testserver/slash/')
|
||||
self.assertIsInstance(r, HttpResponseRedirect)
|
||||
|
||||
|
||||
@override_settings(
|
||||
IGNORABLE_404_URLS=(re.compile(r'foo'),),
|
||||
|
||||
Reference in New Issue
Block a user