doctests.py 626 octets
Newer Older
peter.norvig's avatar
peter.norvig a validé
"""Run all doctests from modules on the command line.  Use -v for verbose.
peter.norvig's avatar
peter.norvig a validé
Example usages:
peter.norvig's avatar
peter.norvig a validé
    python doctests.py -v *.py
peter.norvig's avatar
peter.norvig a validé
You can add more module-level tests with 
    __doc__ += "..."
You can add stochastic tests with 
    __doc__ += random_tests("...")
"""
peter.norvig's avatar
peter.norvig a validé
    import sys, glob, doctest
    args = sys.argv[1:]
    modules = [__import__(name.replace('.py',''))
peter.norvig's avatar
peter.norvig a validé
               for arg in args if arg != "-v" for name in glob.glob(arg)]
    for module in modules:
        doctest.testmod(module, report=1)
    print '%d failed out of %d' % doctest.master.summarize()