|
@@ -18,6 +18,7 @@
|
|
|
import logging
|
|
import logging
|
|
|
import re
|
|
import re
|
|
|
import json
|
|
import json
|
|
|
|
|
+import sys
|
|
|
|
|
|
|
|
import django.test.client
|
|
import django.test.client
|
|
|
import nose.tools
|
|
import nose.tools
|
|
@@ -26,6 +27,11 @@ from useradmin.models import User, Group, Organization
|
|
|
|
|
|
|
|
from desktop.conf import ENABLE_ORGANIZATIONS
|
|
from desktop.conf import ENABLE_ORGANIZATIONS
|
|
|
|
|
|
|
|
|
|
+if sys.version_info[0] > 2:
|
|
|
|
|
+ from unittest.mock import Mock
|
|
|
|
|
+else:
|
|
|
|
|
+ from mock import Mock
|
|
|
|
|
+
|
|
|
|
|
|
|
|
class Client(django.test.client.Client):
|
|
class Client(django.test.client.Client):
|
|
|
"""
|
|
"""
|
|
@@ -46,13 +52,14 @@ def assert_ok_response(response):
|
|
|
return response
|
|
return response
|
|
|
|
|
|
|
|
|
|
|
|
|
-def make_logged_in_client(username="test", password="test", is_superuser=True, recreate=False, groupname=None, is_admin=False):
|
|
|
|
|
|
|
+def make_logged_in_client(username="test", password="test", is_superuser=True, recreate=False, groupname=None, is_admin=False, request=None):
|
|
|
"""
|
|
"""
|
|
|
Create a client with a user already logged in.
|
|
Create a client with a user already logged in.
|
|
|
|
|
|
|
|
Sometimes we recreate the user, because some tests like to mess with is_active and such.
|
|
Sometimes we recreate the user, because some tests like to mess with is_active and such.
|
|
|
Note: could be combined with backend.create_user and other standart utils.
|
|
Note: could be combined with backend.create_user and other standart utils.
|
|
|
"""
|
|
"""
|
|
|
|
|
+ request = Mock()
|
|
|
try:
|
|
try:
|
|
|
user = User.objects.get(username=username)
|
|
user = User.objects.get(username=username)
|
|
|
if recreate:
|
|
if recreate:
|
|
@@ -83,7 +90,7 @@ def make_logged_in_client(username="test", password="test", is_superuser=True, r
|
|
|
user.save()
|
|
user.save()
|
|
|
|
|
|
|
|
c = Client()
|
|
c = Client()
|
|
|
- ret = c.login(username=username, password=password)
|
|
|
|
|
|
|
+ ret = c.login(username=username, password=password, request=request)
|
|
|
|
|
|
|
|
assert ret, "Login failed (user '%s')." % username
|
|
assert ret, "Login failed (user '%s')." % username
|
|
|
return c
|
|
return c
|