Можно ли сделать doctest на метод модели Django (validate_unique)
У меня есть модель Django, в которой я переопределил validate_unique().
Я хочу добавить доктест для проверки на исключение, которое я выбрасываю, если сохраняемый объект недостаточно уникален (а не сам по себе). Это работает нормально (например, в Admin создание вырожденного объекта вызывает ошибку, как и изменение существующей записи таким образом, чтобы она не была уникальной; изменение других полей записи, не участвующих в уникальности, сохраняет правильно).
Я прочитал документацию по doctests, но не могу найти пример для использования в случае, когда метод находится внутри класса модели Django, а именно:
class MyModel(models.Model):
def validate_unique(self, *args, **kwargs):
"""
>>> validate_unique(???)
Traceback (most recent call last):
...
ValidationError: Parameter with this as_of_date + slug + facility combination already exists.
"""
(working code here)
Любые указания на соответствующую документацию (поскольку я не смог ничего найти) или фрагмент кода были бы очень признательны.
ИЛИ - лучше сделать доктест на самой модели, т.е.:
class MyModel(models.Model):
"""
>>> test1 = MyModel.objects.create(...fields)
>>> test1.save()
>>> test2 = MyModel.objects.create(... same field values)
>>> test2.validate_unique()
Traceback (most recent call last):
...
ValidationError: Parameter with this as_of_date + slug + facility combination already exists.
"""
(в таком случае я сам ответил на свой вопрос...)