diff --git a/django/test/signals.py b/django/test/signals.py index e9ba517073..62b386268c 100644 --- a/django/test/signals.py +++ b/django/test/signals.py @@ -3,6 +3,7 @@ import threading import time import warnings +from django.apps import apps from django.core.signals import setting_changed from django.db import connections, router from django.db.utils import ConnectionRouter @@ -168,3 +169,9 @@ def auth_password_validators_changed(**kwargs): if kwargs['setting'] == 'AUTH_PASSWORD_VALIDATORS': from django.contrib.auth.password_validation import get_default_password_validators get_default_password_validators.cache_clear() + + +@receiver(setting_changed) +def user_model_swapped(**kwargs): + if kwargs['setting'] == 'AUTH_USER_MODEL': + apps.clear_cache() diff --git a/tests/auth_tests/test_basic.py b/tests/auth_tests/test_basic.py index 7421f66e49..caefa9c7a0 100644 --- a/tests/auth_tests/test_basic.py +++ b/tests/auth_tests/test_basic.py @@ -3,25 +3,16 @@ from __future__ import unicode_literals import warnings -from django.apps import apps from django.contrib.auth import get_user_model from django.contrib.auth.models import AnonymousUser, User from django.core.exceptions import ImproperlyConfigured from django.db import IntegrityError -from django.dispatch import receiver from django.test import TestCase, override_settings -from django.test.signals import setting_changed from django.utils import translation from .models import CustomUser -@receiver(setting_changed) -def user_model_swapped(**kwargs): - if kwargs['setting'] == 'AUTH_USER_MODEL': - apps.clear_cache() - - class BasicTestCase(TestCase): def test_user(self): "Check that users can be created and can set their password"