mirror of
https://github.com/cookiecutter/cookiecutter-django.git
synced 2025-07-07 05:43:07 +03:00
Add tests to the admin
This commit is contained in:
parent
9e48191115
commit
9f4e904348
|
@ -15,6 +15,11 @@ class MyUserChangeForm(UserChangeForm):
|
||||||
|
|
||||||
|
|
||||||
class MyUserCreationForm(UserCreationForm):
|
class MyUserCreationForm(UserCreationForm):
|
||||||
|
|
||||||
|
error_message = UserCreationForm.error_messages.update({
|
||||||
|
'duplicate_username': 'This username has already been taken.'
|
||||||
|
})
|
||||||
|
|
||||||
class Meta(UserCreationForm.Meta):
|
class Meta(UserCreationForm.Meta):
|
||||||
model = User
|
model = User
|
||||||
|
|
||||||
|
|
|
@ -0,0 +1,42 @@
|
||||||
|
from django import forms
|
||||||
|
|
||||||
|
from test_plus.test import TestCase
|
||||||
|
|
||||||
|
from ..admin import MyUserCreationForm
|
||||||
|
|
||||||
|
|
||||||
|
class TestMyUserCreationForm(TestCase):
|
||||||
|
|
||||||
|
def setUp(self):
|
||||||
|
self.user = self.make_user()
|
||||||
|
|
||||||
|
def test_clean_username_success(self):
|
||||||
|
# Instantiate the form with a new username
|
||||||
|
form = MyUserCreationForm({
|
||||||
|
'username': 'alamode',
|
||||||
|
'password1': '123456',
|
||||||
|
'password2': '123456',
|
||||||
|
})
|
||||||
|
# Run is_valid() to trigger the validation
|
||||||
|
valid = form.is_valid()
|
||||||
|
self.assertTrue(valid)
|
||||||
|
|
||||||
|
# Run the actual clean_username method
|
||||||
|
username = form.clean_username()
|
||||||
|
self.assertEqual('alamode', username)
|
||||||
|
|
||||||
|
def test_clean_username_false(self):
|
||||||
|
# Instantiate the form with the same username as self.user
|
||||||
|
form = MyUserCreationForm({
|
||||||
|
'username': self.user.username,
|
||||||
|
'password1': '123456',
|
||||||
|
'password2': '123456',
|
||||||
|
})
|
||||||
|
# Run is_valid() to trigger the validation, which is going to fail
|
||||||
|
# because the username is already taken
|
||||||
|
valid = form.is_valid()
|
||||||
|
self.assertFalse(valid)
|
||||||
|
|
||||||
|
# The form.errors dict should contain a single error called 'username'
|
||||||
|
self.assertTrue(len(form.errors) == 1)
|
||||||
|
self.assertTrue('username' in form.errors)
|
Loading…
Reference in New Issue
Block a user