diff options
| author | Georg Brandl <georg@python.org> | 2008-11-23 21:58:30 +0100 |
|---|---|---|
| committer | Georg Brandl <georg@python.org> | 2008-11-23 21:58:30 +0100 |
| commit | b60aa04cbc1cd576fd9f0b1ae44917aa9cf63c73 (patch) | |
| tree | 9a04e206dd0f41444790f2c67263932c4d90d451 /tests | |
| parent | aad01fc33b6a9a297f97adc04e6e3fadbd7544fd (diff) | |
| download | sphinx-b60aa04cbc1cd576fd9f0b1ae44917aa9cf63c73.tar.gz | |
Don't fail test suite because of missing latex packages.
Diffstat (limited to 'tests')
| -rw-r--r-- | tests/test_build.py | 27 |
1 files changed, 27 insertions, 0 deletions
diff --git a/tests/test_build.py b/tests/test_build.py index 2ecd6550..8ca17938 100644 --- a/tests/test_build.py +++ b/tests/test_build.py @@ -10,6 +10,7 @@ """ import os +import sys import difflib import htmlentitydefs from StringIO import StringIO @@ -129,6 +130,32 @@ def test_latex(app): '\n'.join(difflib.ndiff(latex_warnings_exp.splitlines(), latex_warnings.splitlines())) + # only run latex if all needed packages are there + def kpsetest(filename): + try: + p = Popen(['kpsewhich', filename], stdout=PIPE) + except OSError, err: + # no kpsewhich... either no tex distribution is installed or it is + # a "strange" one -- don't bother running latex + return None + else: + p.communicate() + if p.returncode != 0: + # not found + return False + # found + return True + + if kpsetest('article.sty') is None: + print >>sys.stderr, 'info: not running latex, it doesn\'t seem to be installed' + return + for filename in ['fancyhdr.sty', 'fancybox.sty', 'titlesec.sty', 'amsmath.sty', + 'framed.sty', 'color.sty', 'fancyvrb.sty', 'threeparttable.sty']: + if not kpsetest(filename): + print >>sys.stderr, 'info: not running latex, the %s package doesn\'t ' \ + 'seem to be installed' % filename + return + # now, try to run latex over it cwd = os.getcwd() os.chdir(app.outdir) |
