|
@@ -0,0 +1,56 @@
|
|
|
+from django.core.exceptions import ValidationError
|
|
|
+from django.core.management import call_command
|
|
|
+from django.test import TestCase
|
|
|
+from misago.models import User, Rank, Role
|
|
|
+from misago.monitor import Monitor
|
|
|
+
|
|
|
+class UserAddTestCase(TestCase):
|
|
|
+ def setUp(self):
|
|
|
+ call_command('startmisago', quiet=True)
|
|
|
+
|
|
|
+ def test_user_from_model(self):
|
|
|
+ """Test User.objects.create_user"""
|
|
|
+
|
|
|
+ user_a = User.objects.create_user('Lemmiwinks', 'lemm@sp.com', '123pass')
|
|
|
+
|
|
|
+ monitor = Monitor()
|
|
|
+ self.assertEqual(int(monitor['users']), 1)
|
|
|
+ self.assertEqual(int(monitor['users_inactive']), 0)
|
|
|
+ self.assertEqual(int(monitor['last_user']), user_a.pk)
|
|
|
+ self.assertEqual(monitor['last_user_name'], user_a.username)
|
|
|
+ self.assertEqual(monitor['last_user_slug'], user_a.username_slug)
|
|
|
+
|
|
|
+ user_b = User.objects.create_user('InactiveTest', 'lemsm@sp.com', '123pass', activation=User.ACTIVATION_USER)
|
|
|
+
|
|
|
+ monitor = Monitor()
|
|
|
+ self.assertEqual(int(monitor['users']), 1)
|
|
|
+ self.assertEqual(int(monitor['users_inactive']), 1)
|
|
|
+ self.assertEqual(int(monitor['last_user']), user_a.pk)
|
|
|
+ self.assertEqual(monitor['last_user_name'], user_a.username)
|
|
|
+ self.assertEqual(monitor['last_user_slug'], user_a.username_slug)
|
|
|
+
|
|
|
+ try:
|
|
|
+ user_c = User.objects.create_user('UsedMail', 'lemsm@sp.com', '123pass')
|
|
|
+ raise AssertionError("Created user account with taken e-mail address!")
|
|
|
+ except ValidationError:
|
|
|
+ pass
|
|
|
+
|
|
|
+ monitor = Monitor()
|
|
|
+ self.assertEqual(int(monitor['users']), 1)
|
|
|
+ self.assertEqual(int(monitor['users_inactive']), 1)
|
|
|
+ self.assertEqual(int(monitor['last_user']), user_a.pk)
|
|
|
+ self.assertEqual(monitor['last_user_name'], user_a.username)
|
|
|
+ self.assertEqual(monitor['last_user_slug'], user_a.username_slug)
|
|
|
+
|
|
|
+ try:
|
|
|
+ user_d = User.objects.create_user('InactiveTest', 'user@name.com', '123pass')
|
|
|
+ raise AssertionError("Created user account with taken username!")
|
|
|
+ except ValidationError:
|
|
|
+ pass
|
|
|
+
|
|
|
+ monitor = Monitor()
|
|
|
+ self.assertEqual(int(monitor['users']), 1)
|
|
|
+ self.assertEqual(int(monitor['users_inactive']), 1)
|
|
|
+ self.assertEqual(int(monitor['last_user']), user_a.pk)
|
|
|
+ self.assertEqual(monitor['last_user_name'], user_a.username)
|
|
|
+ self.assertEqual(monitor['last_user_slug'], user_a.username_slug)
|