|
29
|
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) |