diff options
author | Edward Loper <edloper@gradient.cis.upenn.edu> | 2004-09-18 20:27:04 (GMT) |
---|---|---|
committer | Edward Loper <edloper@gradient.cis.upenn.edu> | 2004-09-18 20:27:04 (GMT) |
commit | 0273f5b6b29486629f74f184da84172cb43fe221 (patch) | |
tree | e9e40f3848892fe671b6595e5cc7b486eae517af /Lib/test | |
parent | c9f53b4905c17deaee2ae9a2265602fccba123d4 (diff) | |
download | cpython-0273f5b6b29486629f74f184da84172cb43fe221.zip cpython-0273f5b6b29486629f74f184da84172cb43fe221.tar.gz cpython-0273f5b6b29486629f74f184da84172cb43fe221.tar.bz2 |
In DocFileTest:
- Fixed bug in handling of absolute paths.
- If run from an interactive session, make paths relative to the
directory containing sys.argv[0] (since __main__ doesn't have
a __file__ attribute).
Diffstat (limited to 'Lib/test')
-rw-r--r-- | Lib/test/test_doctest.py | 29 |
1 files changed, 26 insertions, 3 deletions
diff --git a/Lib/test/test_doctest.py b/Lib/test/test_doctest.py index 77b9ef5..8c96b21 100644 --- a/Lib/test/test_doctest.py +++ b/Lib/test/test_doctest.py @@ -1812,14 +1812,37 @@ def test_DocFileSuite(): >>> suite.run(unittest.TestResult()) <unittest.TestResult run=2 errors=0 failures=2> - Note that '/' should be used as a path separator. It will be - converted to a native separator at run time: - + '/' should be used as a path separator. It will be converted + to a native separator at run time: >>> suite = doctest.DocFileSuite('../test/test_doctest.txt') >>> suite.run(unittest.TestResult()) <unittest.TestResult run=1 errors=0 failures=1> + If DocFileSuite is used from an interactive session, then files + are resolved relative to the directory of sys.argv[0]: + + >>> import new, os.path, test.test_doctest + >>> save_argv = sys.argv + >>> sys.argv = [test.test_doctest.__file__] + >>> suite = doctest.DocFileSuite('test_doctest.txt', + ... package=new.module('__main__')) + >>> sys.argv = save_argv + + Absolute paths may also be used; they should use the native + path separator (*not* '/'). + + >>> # Get the absolute path of the test package. + >>> test_doctest_path = os.path.abspath(test.test_doctest.__file__) + >>> test_pkg_path = os.path.split(test_doctest_path)[0] + + >>> # Use it to find the absolute path of test_doctest.txt. + >>> test_file = os.path.join(test_pkg_path, 'test_doctest.txt') + + >>> suite = doctest.DocFileSuite(test_file) + >>> suite.run(unittest.TestResult()) + <unittest.TestResult run=1 errors=0 failures=1> + You can specify initial global variables: >>> suite = doctest.DocFileSuite('test_doctest.txt', |