anandology / hacks

Utility scripts

hacks / doctest
100755 29 lines (21 sloc) 0.567 kb
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
#! /usr/bin/env python
"""Utility to run doctests in a python script.
 
Usage:
$ doctest script.py
"""
 
import doctest
import os.path
 
def test(filename, verbose=False):
    base, ext = os.path.splitext(filename)
    name = base.replace(os.path.sep, '.')
    mod = __import__(name, None, None, ['x'])
    doctest.testmod(mod, verbose=verbose)
 
if __name__ == "__main__":
    import sys
    sys.path.insert(0, '.')
 
    if '-v' in sys.argv:
        sys.argv.remove('-v')
        verbose = True
    else:
        verbose = False
 
    test(sys.argv[1], verbose)