web/lib/django/contrib/auth/tests/models.py
changeset 29 cc9b7e14412b
equal deleted inserted replaced
28:b758351d191f 29:cc9b7e14412b
       
     1 from django.conf import settings
       
     2 from django.test import TestCase
       
     3 from django.contrib.auth.models import User, SiteProfileNotAvailable
       
     4 
       
     5 class ProfileTestCase(TestCase):
       
     6     fixtures = ['authtestdata.json']
       
     7     def setUp(self):
       
     8         """Backs up the AUTH_PROFILE_MODULE"""
       
     9         self.old_AUTH_PROFILE_MODULE = getattr(settings,
       
    10                                                'AUTH_PROFILE_MODULE', None)
       
    11 
       
    12     def tearDown(self):
       
    13         """Restores the AUTH_PROFILE_MODULE -- if it was not set it is deleted,
       
    14         otherwise the old value is restored"""
       
    15         if self.old_AUTH_PROFILE_MODULE is None and \
       
    16                 hasattr(settings, 'AUTH_PROFILE_MODULE'):
       
    17             del settings.AUTH_PROFILE_MODULE
       
    18 
       
    19         if self.old_AUTH_PROFILE_MODULE is not None:
       
    20             settings.AUTH_PROFILE_MODULE = self.old_AUTH_PROFILE_MODULE
       
    21 
       
    22     def test_site_profile_not_available(self):
       
    23         # calling get_profile without AUTH_PROFILE_MODULE set
       
    24         if hasattr(settings, 'AUTH_PROFILE_MODULE'):
       
    25             del settings.AUTH_PROFILE_MODULE
       
    26         user = User.objects.get(username='testclient')
       
    27         self.assertRaises(SiteProfileNotAvailable, user.get_profile)
       
    28 
       
    29         # Bad syntax in AUTH_PROFILE_MODULE: 
       
    30         settings.AUTH_PROFILE_MODULE = 'foobar'
       
    31         self.assertRaises(SiteProfileNotAvailable, user.get_profile)
       
    32 
       
    33         # module that doesn't exist
       
    34         settings.AUTH_PROFILE_MODULE = 'foo.bar'
       
    35         self.assertRaises(SiteProfileNotAvailable, user.get_profile)