Extend members app: add user signals for automatic Member profile creation, tests for Member behavior, and updated authentication backends
This commit is contained in:
@@ -1,3 +1,30 @@
|
||||
from django.contrib.auth import get_user_model
|
||||
from django.contrib.auth.models import Permission
|
||||
from django.test import TestCase
|
||||
|
||||
# Create your tests here.
|
||||
User = get_user_model()
|
||||
|
||||
|
||||
class MembersTestCase(TestCase):
|
||||
def setUp(self):
|
||||
self.user_a = User.objects.create(username="user_a", first_name="User", last_name="A", email="user_a@test.com")
|
||||
|
||||
def testMemberName(self):
|
||||
self.assertEqual(str(self.user_a.member), "User A")
|
||||
|
||||
def testMemberCreation(self):
|
||||
self.assertTrue(hasattr(self.user_a, "member"))
|
||||
|
||||
def testMemberManager(self):
|
||||
self.assertFalse(self.user_a.has_perm("members.member_manager"))
|
||||
self.assertFalse(self.user_a.has_perm("members.add_member"))
|
||||
self.assertFalse(self.user_a.is_superuser)
|
||||
|
||||
member_manager_permission = Permission.objects.get(codename="member_manager")
|
||||
|
||||
self.user_a.user_permissions.add(member_manager_permission)
|
||||
self.user_a = User.objects.get(pk=self.user_a.pk)
|
||||
|
||||
self.assertTrue(self.user_a.has_perm("members.member_manager"))
|
||||
self.assertTrue(self.user_a.has_perm("members.add_member"))
|
||||
self.assertFalse(self.user_a.is_superuser)
|
||||
|
||||
Reference in New Issue
Block a user