У меня есть приложение account_engine, где у меня есть модель CustomerAccount, которую нужно протестировать.
в models.py
class CustomerAccount(models.Model):
username = models.EmailField("Email Address")
date_first_registered = models.DateTimeField()
last_update = models.DateTimeField(auto_now = True)
#password = models.TextField()
password = EncryptedField(max_length=500)
source = models.CharField(max_length = 10, null = True, blank = True)
password_reset_token = models.CharField(max_length = 30, null = True, blank = True)
def __str__(self):
return u'%s' % (self.id)
def is_internal_email(self):
# check if customer account is internal using email domain and set is_internal_email flag accordingly
self.is_internal_email = False
internal_emails = ['test.com', 'testing.com', 'testmail.com']
customer_email = self.username.split('@')[1]
for email in internal_emails:
if email == customer_email:
self.is_internal_email = True
return self.is_internal_email
в моих тестах. P
import datetime
from django.test import TestCase
from account_engine import models
class CustomerAccountTestCase(TestCase):
def setUp(self):
CustomerAccount.objects.create(
username = 'test@test.com',
date_first_registered = '2018-05-15 12:32:35.817018',
password = 'Test@12345'
)
def test_get_customeraccount(self):
first_customer = CustomerAccount.objects.first()
self.assertEqual(first_customer.username, 'test@test.com')
при выполнении теста python manage.py я получаю следующую ошибку
======================================================================
ERROR: test_get_customeraccount (account_engine.tests.tests_models.CustomerAccountTestCase)
----------------------------------------------------------------------
Traceback (most recent call last):
File "D:\xxxxxxx\account_engine\tests\tests_models.py", line 9, in setUp
CustomerAccount.objects.create(
NameError: name 'CustomerAccount' is not defined
----------------------------------------------------------------------
Я только начал учиться тестирование в django, так что это может быть очень простой ошибкой. пока я не в состоянии понять это. Кроме того, как я могу проверить свои методы, определенные в модели? Кроме того, что все должны тестировать в модели?