Moved the AUTH_USER_MODEL setting changed receiver.

Test suites besides Django's may need the same behavior.
This commit is contained in:
Simon Charette 2016-05-18 09:33:53 -04:00
parent b9ae662c97
commit 7694e196ce
No known key found for this signature in database
GPG Key ID: 72AF89A0B1B4EDB3
2 changed files with 7 additions and 9 deletions

View File

@ -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()

View File

@ -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"