我有一个模型,在该模型中,我重写了保存函数,类似于:
class MyModel(models.Model):
number = models.PositiveIngeter()
def save(self,*args, **kwargs)
if self.number > 10:
super().save(*args, **kwargs)
else:
raise ValidationError('msg')我正在测试的功能就像
def test_number(self):
myModel = MyModel(number=5)
self.assertRaises(ValidationError,myModel.save)
the error i got is like this:
ERROR: test_number(apps.players.tests.test_models.CityDetailTestCase)Traceback (most recent call last):
File "/home/sagar/project/apps/players/tests/test_models.py", line 740, in test_number
self.asserttRaises(ValidationError,mumbai.save)
File "/home/sagar/.pyenv/versions/3.5.9/lib/python3.5/unittest/case.py", line 733, in assertRaises
return context.handle('assertRaises', args, kwargs)
File "/home/sagar/.pyenv/versions/3.5.9/lib/python3.5/unittest/case.py", line 178, in handle
callable_obj(*args, **kwargs)
File "/home/sagar/.pyenv/versions/3.5.9/lib/python3.5/contextlib.py", line 30, in inner
return func(*args, **kwds)
File "/home/sagar/project/apps/players/models.py", line 2452, in save
raise ValidationError("msg")
rest_framework.exceptions.ValidationError: ['msg']我刚到Django,不知道这是怎么回事
发布于 2022-08-01 05:15:27
不需要调用该方法,只需将其作为参数传递:
from django.test import TestCase
class MyModelTest(TestCase):
def test_my_model(self):
myModel = MyModel(number=5)
self.asserRaises(ValidationError, myModel.save)https://stackoverflow.com/questions/73188838
复制相似问题