From 9d76a3c52b8310726ec09e0262813f0438c21df6 Mon Sep 17 00:00:00 2001 From: Matthew Lemon Date: Sun, 19 Jan 2020 15:57:06 +0000 Subject: init commit - from cookiecutter --- ctrack/users/tests/test_forms.py | 40 ++++++++++++++++++++++++++++++++++++++++ 1 file changed, 40 insertions(+) create mode 100644 ctrack/users/tests/test_forms.py (limited to 'ctrack/users/tests/test_forms.py') diff --git a/ctrack/users/tests/test_forms.py b/ctrack/users/tests/test_forms.py new file mode 100644 index 0000000..11ef251 --- /dev/null +++ b/ctrack/users/tests/test_forms.py @@ -0,0 +1,40 @@ +import pytest + +from ctrack.users.forms import UserCreationForm +from ctrack.users.tests.factories import UserFactory + +pytestmark = pytest.mark.django_db + + +class TestUserCreationForm: + def test_clean_username(self): + # A user with proto_user params does not exist yet. + proto_user = UserFactory.build() + + form = UserCreationForm( + { + "username": proto_user.username, + "password1": proto_user._password, + "password2": proto_user._password, + } + ) + + assert form.is_valid() + assert form.clean_username() == proto_user.username + + # Creating a user. + form.save() + + # The user with proto_user params already exists, + # hence cannot be created. + form = UserCreationForm( + { + "username": proto_user.username, + "password1": proto_user._password, + "password2": proto_user._password, + } + ) + + assert not form.is_valid() + assert len(form.errors) == 1 + assert "username" in form.errors -- cgit v1.2.3