diff options
author | matt <matt@xcolour.net> | 2013-01-28 11:32:18 -0500 |
---|---|---|
committer | matt <matt@xcolour.net> | 2013-01-28 11:32:18 -0500 |
commit | 1afcb52d73271bbbd78f885451aa1b0e78c09871 (patch) | |
tree | 9145840d6036fcbc0b6647c88f679a567fa8c54d /tests/test_doctests.py | |
download | paste-git-stringio.tar.gz |
Import StringIO so it can be used.stringio
Diffstat (limited to 'tests/test_doctests.py')
-rw-r--r-- | tests/test_doctests.py | 60 |
1 files changed, 60 insertions, 0 deletions
diff --git a/tests/test_doctests.py b/tests/test_doctests.py new file mode 100644 index 0000000..3db3857 --- /dev/null +++ b/tests/test_doctests.py @@ -0,0 +1,60 @@ +from paste.util import doctest24 as doctest +from paste.util.import_string import simple_import +import os + +filenames = [ + 'tests/test_template.txt', + ] + +modules = [ + 'paste.util.template', + 'paste.util.looper', + # This one opens up httpserver, which is bad: + #'paste.auth.cookie', + #'paste.auth.multi', + #'paste.auth.digest', + #'paste.auth.basic', + #'paste.auth.form', + #'paste.progress', + 'paste.exceptions.serial_number_generator', + 'paste.evalexception.evalcontext', + 'paste.util.dateinterval', + 'paste.util.quoting', + 'paste.wsgilib', + 'paste.url', + 'paste.request', + ] + +options = doctest.ELLIPSIS|doctest.REPORT_ONLY_FIRST_FAILURE + +def test_doctests(): + for filename in filenames: + filename = os.path.join( + os.path.dirname(os.path.dirname(__file__)), + filename) + yield do_doctest, filename + +def do_doctest(filename): + failure, total = doctest.testfile( + filename, module_relative=False, + optionflags=options) + assert not failure, "Failure in %r" % filename + +def test_doctest_mods(): + for module in modules: + yield do_doctest_mod, module + +def do_doctest_mod(module): + module = simple_import(module) + failure, total = doctest.testmod( + module, optionflags=options) + assert not failure, "Failure in %r" % module + +if __name__ == '__main__': + import sys + import doctest + args = sys.argv[1:] + if not args: + args = filenames + for filename in args: + doctest.testfile(filename, module_relative=False) |