Вопрос по doctest: можно ли его научить корректно работать с многострочниками, в которых есть настройки?
Попытаюсь объяснить на примерах.
Простой случай:
"""
>>> a = 1
>>> b = 2
>>> print a + b
3
"""
import doctest
doctest.testmod(verbose=True)
По смыслу тут один тест (остальное - приготовления, настройки), но doctest проверяет каждую строчку и потому сообщает о том, что пройдено 3 теста.
Настройки можно вынести наружу.
"""
>>> print a + b
3
"""
a = 1
b = 2
import doctest
doctest.testmod(verbose=True)
Теперь выявляется один тест, но во первых, мне не нужны эти переменные в глобальном пространстве, во вторых некрасиво то, что последовательность операций вывернута.
Про юнит-тесты знаю, но стало интересно, что можно выжать из doctest.