Creo que me falta algo sobre la extensión de esfinge para doctest.Generación automática de la salida de doctest con la extensión Sphinx
El ejemplo típico en la documentación es:
.. doctest::
>>> print 1
1
¿No hay una manera de dejar esfinge generar la salida (en este caso: 1
) de forma automática?
Por lo que he entendido, es posible ejecutar:
$ make doctest
que tiene el efecto de probar los fragmentos de código, y comparar la salida real con la salida esperada. Por ejemplo, si usted tiene
.. doctest::
>>> print 1
3
doctest le advertirá que llegó 1
mientras esperaba 3
.
En su lugar, me gustaría que sphinx inserte la salida real solo en mi docstring o en mi archivo .rst. Por ejemplo, si tenemos algo como:
.. doctest::
>>> print 1
>>> print [2*x for x in range(3)]
me gustaría que cuando corremos make doctest
con una opción, cambia la cadena de documentación a:
.. doctest::
>>> print 1
1
>>> print [2*x for x in range(3)]
[0,2,4]
estoy seguro de que es posible, y me ser muy conveniente!
Gracias! Me doy cuenta de que estaba malinterpretando el propósito de esta extensión de esfinge. Creo que era más una forma de escribir el documento de una manera más rápida, pero ahora entiendo toda la idea detrás del más doctest. – user1283990