У меня есть эта модель
from django.db import models
from django.contrib.auth.models import AbstractUser
class Account(AbstractUser):
last_updated = models.DateTimeField(default=datetime.now, blank=False, null=False)
class User(Account):
security_question = models.TextField(blank=True)
security_answer = models.CharField(max_length=50, blank=True)
и этот простой тестовый пример:
from django import test
from myapp import models
class UserTestCase(test.TestCase):
def test_user_password_cannot_be_empty(self):
def create_user_without_password():
models.User.objects.create(
username='usr2',
first_name='Name',
last_name='Name2',
email='me@email.com'
)
# should throw an error
self.assertRaises(
Exception,
create_user_without_password
)
Тест должен пройти, так как пароль является обязательным полем, но при запуске python manage.py test --pattern="tests_*.py"
я получаю
=============================================== =======================
FAIL: test_user_password_cannot_be_empty (myapp.tests_user_testcase.UserTestCase)
AssertionError: Исключение не вызвано create_user_without_password
Думаю, я проверяю это неправильно. Какой правильный путь?
Технические характеристики:
- Python 3.6.1
- Джанго 2.1.1
- Windows 10