Как заставить Sphinx протестировать код, встроенный в документацию? - PullRequest
3 голосов
/ 07 января 2010

Если этот код является блок-цитатой в моей документации, что мне нужно сделать, чтобы Sphinx запустил его при создании документации? Я попытался добавить

.. testcode::

    import datetime
    def today():
        return datetime.datetime.now().date()
    if True:
        today()

к одному из .rst источников и расширению Sphinx doctest к conf.py, но я получил ошибку, сообщающую о неожиданном отступе в первой строке тела функции. Может ли Sphinx doctest запускать функции, определенные в документации?

1 Ответ

3 голосов
/ 09 января 2010

Директива testcode нуждается в соответствующей директиве testoutput.

Вот пример из документации.

.. testcode::

   print 'Output     text.'

.. testoutput::
   :hide:
   :options: -ELLIPSIS, +NORMALIZE_WHITESPACE

   Output text.
...