|
@@ -1094,6 +1094,25 @@ class SessionTests(TestCase):
|
|
|
user_logged_out.disconnect(listener)
|
|
|
self.assertTrue(listener.executed)
|
|
|
|
|
|
+ @override_settings(AUTHENTICATION_BACKENDS=(
|
|
|
+ 'django.contrib.auth.backends.ModelBackend',
|
|
|
+ 'test_client_regress.auth_backends.CustomUserBackend'))
|
|
|
+ def test_logout_with_custom_auth_backend(self):
|
|
|
+ "Request a logout after logging in with custom authentication backend"
|
|
|
+ def listener(*args, **kwargs):
|
|
|
+ self.assertEqual(kwargs['sender'], CustomUser)
|
|
|
+ listener.executed = True
|
|
|
+ listener.executed = False
|
|
|
+ u = CustomUser.custom_objects.create(email='test@test.com')
|
|
|
+ u.set_password('password')
|
|
|
+ u.save()
|
|
|
+
|
|
|
+ user_logged_out.connect(listener)
|
|
|
+ self.client.login(username='test@test.com', password='password')
|
|
|
+ self.client.logout()
|
|
|
+ user_logged_out.disconnect(listener)
|
|
|
+ self.assertTrue(listener.executed)
|
|
|
+
|
|
|
def test_logout_without_user(self):
|
|
|
"""Logout should send signal even if user not authenticated."""
|
|
|
def listener(user, *args, **kwargs):
|