You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

52 lines
1.7 KiB

9 years ago
from django.test import TestCase
from .models import CustomUser, Member
class TestCustomUserManager(TestCase):
def test_create_user(self):
new_user = CustomUser.objects.create_user('test@example.com')
self.assertTrue(new_user.pk)
def test_create_user_no_email(self):
with self.assertRaises(ValueError) as context_manager:
new_user = CustomUser.objects.create_user(email=None)
def test_create_superuser(self):
new_user = CustomUser.objects\
.create_superuser(email='super@example.com', password='password')
self.assertTrue(new_user.is_admin)
self.assertTrue(new_user.is_staff)
self.assertTrue(new_user.check_password('password'))
self.assertTrue(new_user.pk)
class TestCustomUser(TestCase):
def setUp(self):
self.new_user = CustomUser.objects.create_user('test@example.com')
def test_get_short_name(self):
self.assertEqual(self.new_user.get_short_name(), 'test@example.com')
def test_get_full_name(self):
self.assertEqual(self.new_user.get_full_name(), 'test@example.com')
class TestMember(TestCase):
def setUp(self):
self.new_member = Member.objects.create(
first_name='First',
last_name='Last',
post_code='H0H0H0'
)
def test_get_full_name(self):
self.assertEqual(self.new_member.get_full_name(), 'First Last')
self.assertEqual(self.new_member.get_short_name(), 'Last')
# add email to instance
self.new_member.email = 'member@example.com'
self.assertEqual(self.new_member.get_short_name(),
'member@example.com')