--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/web/lib/django/contrib/auth/tests/models.py Wed Jun 02 18:57:35 2010 +0200
@@ -0,0 +1,35 @@
+from django.conf import settings
+from django.test import TestCase
+from django.contrib.auth.models import User, SiteProfileNotAvailable
+
+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):
+ # 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)
+
+ # Bad syntax in AUTH_PROFILE_MODULE:
+ settings.AUTH_PROFILE_MODULE = 'foobar'
+ self.assertRaises(SiteProfileNotAvailable, user.get_profile)
+
+ # module that doesn't exist
+ settings.AUTH_PROFILE_MODULE = 'foo.bar'
+ self.assertRaises(SiteProfileNotAvailable, user.get_profile)