mirror of
https://github.com/django/django.git
synced 2025-10-24 14:16:09 +00:00
Fixed #26601 -- Improved middleware per DEP 0005.
Thanks Tim Graham for polishing the patch, updating the tests, and writing documentation. Thanks Carl Meyer for shepherding the DEP.
This commit is contained in:
committed by
Tim Graham
parent
05c888ffb8
commit
9baf692a58
@@ -5,7 +5,7 @@ from django.contrib.contenttypes.models import ContentType
|
||||
from django.db.models import Q
|
||||
from django.test import SimpleTestCase, TestCase, override_settings
|
||||
|
||||
from .settings import AUTH_MIDDLEWARE_CLASSES, AUTH_TEMPLATES
|
||||
from .settings import AUTH_MIDDLEWARE, AUTH_TEMPLATES
|
||||
|
||||
|
||||
class MockUser(object):
|
||||
@@ -67,7 +67,7 @@ class AuthContextProcessorTests(TestCase):
|
||||
def setUpTestData(cls):
|
||||
cls.superuser = User.objects.create_superuser(username='super', password='secret', email='super@example.com')
|
||||
|
||||
@override_settings(MIDDLEWARE_CLASSES=AUTH_MIDDLEWARE_CLASSES)
|
||||
@override_settings(MIDDLEWARE=AUTH_MIDDLEWARE)
|
||||
def test_session_not_accessed(self):
|
||||
"""
|
||||
Tests that the session is not accessed simply by including
|
||||
@@ -76,7 +76,12 @@ class AuthContextProcessorTests(TestCase):
|
||||
response = self.client.get('/auth_processor_no_attr_access/')
|
||||
self.assertContains(response, "Session not accessed")
|
||||
|
||||
@override_settings(MIDDLEWARE_CLASSES=AUTH_MIDDLEWARE_CLASSES)
|
||||
@override_settings(MIDDLEWARE_CLASSES=AUTH_MIDDLEWARE, MIDDLEWARE=None)
|
||||
def test_session_not_accessed_middleware_classes(self):
|
||||
response = self.client.get('/auth_processor_no_attr_access/')
|
||||
self.assertContains(response, "Session not accessed")
|
||||
|
||||
@override_settings(MIDDLEWARE=AUTH_MIDDLEWARE)
|
||||
def test_session_is_accessed(self):
|
||||
"""
|
||||
Tests that the session is accessed if the auth context processor
|
||||
@@ -85,6 +90,11 @@ class AuthContextProcessorTests(TestCase):
|
||||
response = self.client.get('/auth_processor_attr_access/')
|
||||
self.assertContains(response, "Session accessed")
|
||||
|
||||
@override_settings(MIDDLEWARE_CLASSES=AUTH_MIDDLEWARE, MIDDLEWARE=None)
|
||||
def test_session_is_accessed_middleware_classes(self):
|
||||
response = self.client.get('/auth_processor_attr_access/')
|
||||
self.assertContains(response, "Session accessed")
|
||||
|
||||
def test_perms_attrs(self):
|
||||
u = User.objects.create_user(username='normal', password='secret')
|
||||
u.user_permissions.add(
|
||||
|
||||
Reference in New Issue
Block a user