summaryrefslogtreecommitdiff
path: root/tests
diff options
context:
space:
mode:
authorMariusz Felisiak <felisiak.mariusz@gmail.com>2021-01-12 20:55:32 +0100
committerMariusz Felisiak <felisiak.mariusz@gmail.com>2021-01-14 17:50:04 +0100
commit4bb30fe5d598a7acd2a3055c5e66224cf42a75e9 (patch)
treee46ebaa8e16debbcde2eeb70ca1a9db55e8f8f27 /tests
parent6b4941dd577c494cfa49dbeacfd33594ae770047 (diff)
Refs #26601 -- Made get_response argument required and don't accept None in middleware classes.
Per deprecation timeline.
Diffstat (limited to 'tests')
-rw-r--r--tests/deprecation/test_middleware_mixin.py15
-rw-r--r--tests/redirects_tests/tests.py9
2 files changed, 10 insertions, 14 deletions
diff --git a/tests/deprecation/test_middleware_mixin.py b/tests/deprecation/test_middleware_mixin.py
index 4f410a77c8..ecaf4a5f6a 100644
--- a/tests/deprecation/test_middleware_mixin.py
+++ b/tests/deprecation/test_middleware_mixin.py
@@ -28,14 +28,10 @@ from django.middleware.http import ConditionalGetMiddleware
from django.middleware.locale import LocaleMiddleware
from django.middleware.security import SecurityMiddleware
from django.test import SimpleTestCase
-from django.utils.deprecation import MiddlewareMixin, RemovedInDjango40Warning
+from django.utils.deprecation import MiddlewareMixin
class MiddlewareMixinTests(SimpleTestCase):
- """
- Deprecation warning is raised when using get_response=None.
- """
- msg = 'Passing None for the middleware get_response argument is deprecated.'
middlewares = [
AuthenticationMiddleware,
BrokenLinkEmailsMiddleware,
@@ -58,16 +54,11 @@ class MiddlewareMixinTests(SimpleTestCase):
XViewMiddleware,
]
- def test_deprecation(self):
- for middleware in self.middlewares:
- with self.subTest(middleware=middleware):
- with self.assertRaisesMessage(RemovedInDjango40Warning, self.msg):
- middleware()
-
def test_passing_explicit_none(self):
+ msg = 'get_response must be provided.'
for middleware in self.middlewares:
with self.subTest(middleware=middleware):
- with self.assertRaisesMessage(RemovedInDjango40Warning, self.msg):
+ with self.assertRaisesMessage(ValueError, msg):
middleware(None)
def test_coroutine(self):
diff --git a/tests/redirects_tests/tests.py b/tests/redirects_tests/tests.py
index 7e683a0ab7..b9c5e04334 100644
--- a/tests/redirects_tests/tests.py
+++ b/tests/redirects_tests/tests.py
@@ -3,7 +3,9 @@ from django.contrib.redirects.middleware import RedirectFallbackMiddleware
from django.contrib.redirects.models import Redirect
from django.contrib.sites.models import Site
from django.core.exceptions import ImproperlyConfigured
-from django.http import HttpResponseForbidden, HttpResponseRedirect
+from django.http import (
+ HttpResponse, HttpResponseForbidden, HttpResponseRedirect,
+)
from django.test import TestCase, modify_settings, override_settings
@@ -58,12 +60,15 @@ class RedirectTests(TestCase):
@modify_settings(INSTALLED_APPS={'remove': 'django.contrib.sites'})
def test_sites_not_installed(self):
+ def get_response(request):
+ return HttpResponse()
+
msg = (
'You cannot use RedirectFallbackMiddleware when '
'django.contrib.sites is not installed.'
)
with self.assertRaisesMessage(ImproperlyConfigured, msg):
- RedirectFallbackMiddleware()
+ RedirectFallbackMiddleware(get_response)
class OverriddenRedirectFallbackMiddleware(RedirectFallbackMiddleware):