Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
Browse files

Fixed #17966 -- Isolated ProfileTestCase from custom AUTH_PROFILE_MODULE

Thanks Rob Golding for helping on the patch.
  • Loading branch information...
commit 531878302735e6a2b36d82b584947bbf8eae8111 1 parent d69f1d7
@claudep claudep authored
Showing with 13 additions and 23 deletions.
  1. +13 −23 django/contrib/auth/tests/models.py
View
36 django/contrib/auth/tests/models.py
@@ -5,39 +5,29 @@
SiteProfileNotAvailable, UserManager)
-@override_settings(USE_TZ=False)
+@override_settings(USE_TZ=False, AUTH_PROFILE_MODULE='')
class ProfileTestCase(TestCase):
- fixtures = ['authtestdata.json']
-
- def setUp(self):
- """Backs up the AUTH_PROFILE_MODULE"""
- self.old_AUTH_PROFILE_MODULE = getattr(settings,
- 'AUTH_PROFILE_MODULE', None)
-
- def tearDown(self):
- """Restores the AUTH_PROFILE_MODULE -- if it was not set it is deleted,
- otherwise the old value is restored"""
- if self.old_AUTH_PROFILE_MODULE is None and \
- hasattr(settings, 'AUTH_PROFILE_MODULE'):
- del settings.AUTH_PROFILE_MODULE
-
- if self.old_AUTH_PROFILE_MODULE is not None:
- settings.AUTH_PROFILE_MODULE = self.old_AUTH_PROFILE_MODULE
def test_site_profile_not_available(self):
+ user = User.objects.create(username='testclient')
+
# calling get_profile without AUTH_PROFILE_MODULE set
- if hasattr(settings, 'AUTH_PROFILE_MODULE'):
- del settings.AUTH_PROFILE_MODULE
- user = User.objects.get(username='testclient')
- self.assertRaises(SiteProfileNotAvailable, user.get_profile)
+ del settings.AUTH_PROFILE_MODULE
+ with self.assertRaisesRegexp(SiteProfileNotAvailable,
+ "You need to set AUTH_PROFILE_MODULE in your project"):
+ user.get_profile()
# Bad syntax in AUTH_PROFILE_MODULE:
settings.AUTH_PROFILE_MODULE = 'foobar'
- self.assertRaises(SiteProfileNotAvailable, user.get_profile)
+ with self.assertRaisesRegexp(SiteProfileNotAvailable,
+ "app_label and model_name should be separated by a dot"):
+ user.get_profile()
# module that doesn't exist
settings.AUTH_PROFILE_MODULE = 'foo.bar'
- self.assertRaises(SiteProfileNotAvailable, user.get_profile)
+ with self.assertRaisesRegexp(SiteProfileNotAvailable,
+ "Unable to load the profile model"):
+ user.get_profile()
@override_settings(USE_TZ=False)
Please sign in to comment.
Something went wrong with that request. Please try again.