summaryrefslogtreecommitdiffstats
path: root/askbot/tests/form_tests.py
diff options
context:
space:
mode:
authorAdolfo Fitoria <adolfo.fitoria@gmail.com>2011-08-10 16:57:40 -0400
committerAdolfo Fitoria <adolfo.fitoria@gmail.com>2011-08-10 16:57:40 -0400
commitf958edbcebebca56efd5dcba11bc2f686da68c7b (patch)
tree433c776a93d97c11a2198ff46ad51fbdf98b7678 /askbot/tests/form_tests.py
parent42caaedd31f230f0e936e5f319b7450b2fa5fead (diff)
downloadaskbot-f958edbcebebca56efd5dcba11bc2f686da68c7b.tar.gz
askbot-f958edbcebebca56efd5dcba11bc2f686da68c7b.tar.bz2
askbot-f958edbcebebca56efd5dcba11bc2f686da68c7b.zip
adding tests for UserNameField
Diffstat (limited to 'askbot/tests/form_tests.py')
-rw-r--r--askbot/tests/form_tests.py29
1 files changed, 29 insertions, 0 deletions
diff --git a/askbot/tests/form_tests.py b/askbot/tests/form_tests.py
index 5e889382..2fa572e5 100644
--- a/askbot/tests/form_tests.py
+++ b/askbot/tests/form_tests.py
@@ -2,6 +2,7 @@ from django import forms as django_forms
from askbot.tests.utils import AskbotTestCase
from askbot.conf import settings as askbot_settings
from askbot import forms
+from askbot.utils import forms as util_forms
from askbot import models
EMAIL_CASES = (#test should fail if the second item is None
@@ -276,3 +277,31 @@ class UserStatusFormTest(AskbotTestCase):
def test_moderator_cannot_grant_moderator(self):
self.setup_data('m')
self.assertEquals(self.form.is_valid(), False)
+
+#Test for askbot.utils.forms
+class UserNameFieldTest(AskbotTestCase):
+ def setUp(self):
+ self.u1 = self.create_user('user1')
+ self.username_field = util_forms.UserNameField()
+
+ def test_clean(self):
+ self.username_field.skip_clean = True
+ self.assertEquals(self.username_field.clean('bar'), 'bar')#will pass anything
+
+ self.username_field.skip_clean = False
+
+ #will not pass b/c instance is not User model
+ self.username_field.user_instance = dict(foo=1)
+ self.assertRaises(TypeError, self.username_field.clean, 'foo')
+
+ self.username_field.user_instance = self.u1
+ self.assertEquals(self.username_field.clean('user1'), self.u1.username) #will pass
+
+ #not pass username required
+ self.assertRaises(django_forms.ValidationError, self.username_field.clean, '')
+
+ #invalid username and username in reserved words
+ self.assertRaises(django_forms.ValidationError, self.username_field.clean, ' ')
+ self.assertRaises(django_forms.ValidationError, self.username_field.clean, 'fuck')
+
+ #TODO: test more things