doctest в абстрактном классе

Я включил doctest в метод в абстрактном классе. Производные классы не реализуют метод. Когда я делаю pytest --doctest-modules mymodule.py мой тест не пройден

Будет ли способ сообщить doctest, что он должен тестироваться в производных классах, а не в абстрактном классе?

(На данный момент я переместил doctest в строку документации одного из производных классов, так что это обходной путь)

Обновить:

Пример с abstract.py

class MyClass():
    def add(self, value):
        """
        >>> adder = MyClass()
        >>> isinstance(adder.add(3), int)
        True
        """
        return self.value() + value
    def value(self):
        raise NotImplementedError

а также derived.py

import abstract 
class MyClass(abstract.MyClass):
    def value(self):
        return 2

Вот help(derived.MyClass.add) покажет пример строки документации, которая действительно может быть выполнена (в производном классе):

Help on method add in module abstract:

add(self, value) unbound derived.MyClass method
    >>> adder = MyClass()
    >>> isinstance(adder.add(3), int)
    True

0 ответов

Другие вопросы по тегам