Coverage for accounts/tests/test_forms.py: 100.00%
15 statements
« prev ^ index » next coverage.py v7.16.2, created at 2026-10-15 09:40 -0700
« prev ^ index » next coverage.py v7.16.2, created at 2026-10-15 09:40 -0700
1import pytest 1a
3from ..forms import CustomUserCreationForm 1a
4from .factories import UserFactory 1a
6pytestmark = pytest.mark.django_db 1a
9class TestUserCreationForm: 1a
10 def test_clean_username(self): 1a
11 user = UserFactory.build() 1a
13 form = CustomUserCreationForm( 1a
14 {
15 "username": user.username,
16 "password1": user._password,
17 "password2": user._password,
18 }
19 )
21 assert form.is_valid() 1a
22 assert form.clean_username() == user.username 1a
24 # Creating a user.
25 form.save() 1a
27 # The user with proto_user params already exists,
28 # hence cannot be created.
29 form = CustomUserCreationForm( 1a
30 {
31 "username": user.username,
32 "password1": user._password,
33 "password2": user._password,
34 }
35 )
37 assert not form.is_valid() 1a
38 assert len(form.errors) == 1 1a
39 assert "username" in form.errors 1a