mirror of
https://github.com/django/django.git
synced 2025-08-04 02:48:35 +00:00
Fixed #25699 -- Allowed using the test client if 'django.contrib.sessions' isn't in INSTALLED_APPS.
This commit is contained in:
parent
5faf745999
commit
21dd98a386
3 changed files with 36 additions and 15 deletions
|
@ -348,6 +348,13 @@ class ClientTest(TestCase):
|
|||
self.assertEqual(response.status_code, 200)
|
||||
self.assertEqual(response.context['user'].username, 'testclient')
|
||||
|
||||
@override_settings(
|
||||
INSTALLED_APPS=['django.contrib.auth'],
|
||||
SESSION_ENGINE='django.contrib.sessions.backends.file',
|
||||
)
|
||||
def test_view_with_login_when_sessions_app_is_not_installed(self):
|
||||
self.test_view_with_login()
|
||||
|
||||
def test_view_with_force_login(self):
|
||||
"Request a page that is protected with @login_required"
|
||||
# Get the page without logging in. Should result in 302.
|
||||
|
@ -590,6 +597,21 @@ class ClientTest(TestCase):
|
|||
# Check that the session was modified
|
||||
self.assertEqual(self.client.session['tobacconist'], 'hovercraft')
|
||||
|
||||
@override_settings(
|
||||
INSTALLED_APPS=[],
|
||||
SESSION_ENGINE='django.contrib.sessions.backends.file',
|
||||
)
|
||||
def test_sessions_app_is_not_installed(self):
|
||||
self.test_session_modifying_view()
|
||||
|
||||
@override_settings(
|
||||
INSTALLED_APPS=[],
|
||||
SESSION_ENGINE='django.contrib.sessions.backends.nonexistent',
|
||||
)
|
||||
def test_session_engine_is_invalid(self):
|
||||
with self.assertRaisesMessage(ImportError, 'nonexistent'):
|
||||
self.test_session_modifying_view()
|
||||
|
||||
def test_view_with_exception(self):
|
||||
"Request a page that is known to throw an error"
|
||||
with self.assertRaises(KeyError):
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue