Django user check_password возвращает False в тестах

Я настроил свой User manager создал create_user и create_superuser метод и он работает нормально, но когда я запускаю тест на нем, он не работает из-за user.check_password() он возвращает False. Я нашел этот пост, согласно которому Django не может определить правильный хэшер.
. Это мой UserManager класс

class UserManager(BaseUserManager):

    def create_user(self, email, passowrd=None, **extra_fields):
        '''Creates and saves a new user'''

        phone = extra_fields.get('phone')

        if not email:
            raise ValueError("User must have an email address")

        if not phone:
            raise ValueError("User must have a phone number")

        user = self.model(email=self.normalize_email(email), **extra_fields)
        user.phone = phone
        user.set_password(passowrd)
        user.save(using=self._db)

        return user

    def create_superuser(self, email, password, **extra_fields):
        '''Creates and saves a new superuser'''
        user = self.create_user(email, password, **extra_fields)
        user.is_staff = True
        user.is_superuser = True
        user.save(using=self._db)

        return user

а это мой тестовый метод для проверки создания пользователя

def test_create_user_with_email_and_phone(self):
    '''Test creating new user with an email and phone successfuly'''
    email = 'demo@gmail.com'
    password = 'demo@1234'
    phone = 1234567890

    user = get_user_model().objects.create_user(
                email=email,
                password=password,
                phone=phone
            )
            
    self.assertEqual(user.email, email)
    self.assertEqual(user.phone, phone)
    print(f'\n User Password : {user.password} \n')
    print(f'\n Check Password : {user.check_password(password)} \n')
    self.assertTrue(user.check_password(password))

это вывод функции print()

User Password : !dAqIjSVT6hpEhKj4JEjLLDAB3hAJt042Zaj8JS8R 

Check Password : False 
Вернуться на верх