summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRussell Keith-Magee <russell@keith-magee.com>2014-01-21 08:51:23 +0800
committerRussell Keith-Magee <russell@keith-magee.com>2014-01-21 08:51:23 +0800
commit56516ade5ebde53af16ffdf97d3dce8d27a31e4b (patch)
tree45a7fb78e405aacc6e324264d1d74e7636961ac7
parent8efd20f96d2045cf08baded98e18d241e4c6122d (diff)
Refs #21831 -- Softened the TestClient dependency on contrib.auth.
This is to prevent an import of django.test causing an import (and thus an implicit checks regisration) for an app that may not be in `INSTALLED_APPS`. Better fixes may be possible when #20915 and/or #21829 are addressed. Thanks to @carljm for the report.
-rw-r--r--django/test/client.py3
1 files changed, 2 insertions, 1 deletions
diff --git a/django/test/client.py b/django/test/client.py
index e38ec0250b..90804fc170 100644
--- a/django/test/client.py
+++ b/django/test/client.py
@@ -10,7 +10,6 @@ from io import BytesIO
from django.apps import apps
from django.conf import settings
-from django.contrib.auth import authenticate, login, logout, get_user_model
from django.core.handlers.base import BaseHandler
from django.core.handlers.wsgi import WSGIRequest
from django.core.signals import (request_started, request_finished,
@@ -548,6 +547,7 @@ class Client(RequestFactory):
are incorrect, or the user is inactive, or if the sessions framework is
not available.
"""
+ from django.contrib.auth import authenticate, login
user = authenticate(**credentials)
if (user and user.is_active and
apps.is_installed('django.contrib.sessions')):
@@ -587,6 +587,7 @@ class Client(RequestFactory):
Causes the authenticated user to be logged out.
"""
+ from django.contrib.auth import get_user_model, logout
# Create a fake request that goes through request middleware
request = self.request().wsgi_request