Skip to content
Snippets Groups Projects
test_admin.py 1.05 KiB
Newer Older
  • Learn to ignore specific revisions
  • from funkwhale_api.users.admin import MyUserCreationForm
    
    
    def test_clean_username_success(db):
        # 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()
        assert valid
    
        # Run the actual clean_username method
        username = form.clean_username()
        assert 'alamode' == username
    
    
    def test_clean_username_false(factories):
        user = factories['users.User']()
        # Instantiate the form with the same username as self.user
        form = MyUserCreationForm({
            'username': 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()
        assert not valid
    
        # The form.errors dict should contain a single error called 'username'
        assert len(form.errors) == 1
        assert 'username' in form.errors