doctest en Python
Ejemplos en el docstring que corren como pruebas.
def estrellas(tpm, objetivo=90):
"""Estrellas ganadas por un intento.
>>> estrellas(104)
3
>>> estrellas(70)
1
>>> [estrellas(t) for t in (60, 95)]
[1, 3]
"""
return 3 if tpm >= objetivo else 1
if __name__ == "__main__":
import doctest
print(doctest.testmod())
Cómo funciona
- La salida esperada sigue a la línea del prompt.
testmodcorre cada docstring del módulo.- Mantiene honesta la documentación, que es el punto.
Palabras clave y builtins usados aquí
defelseifprintreturn
El intento, en números
- Líneas
- 17
- Caracteres a escribir
- 264
- Tokens
- 44
- Ritmo de tres estrellas
- 110 tpm
Al ritmo de tres estrellas de 110 tokens por minuto, este intento toma unos 24 segundos.
Paso 3 de 3 en Seleccionar y simular; paso 8 de 9 en Testing con pytest.