Merge pull request #6011 from tk0miya/fix_compile_latex_document

Fix test: compile_latex_document()
This commit is contained in:
Takeshi KOMIYA
2019-02-04 00:05:33 +09:00
committed by GitHub

View File

@@ -23,7 +23,7 @@ from sphinx.config import Config
from sphinx.errors import SphinxError
from sphinx.testing.util import strip_escseq
from sphinx.util import docutils
from sphinx.util.osutil import ensuredir
from sphinx.util.osutil import cd, ensuredir
from sphinx.writers.latex import LaTeXTranslator
@@ -54,15 +54,16 @@ def kpsetest(*filenames):
def compile_latex_document(app, filename='python.tex'):
# now, try to run latex over it
try:
ensuredir(app.config.latex_engine)
# keep a copy of latex file for this engine in case test fails
copyfile(filename, app.config.latex_engine + '/' + filename)
args = [app.config.latex_engine,
'--halt-on-error',
'--interaction=nonstopmode',
'-output-directory=%s' % app.config.latex_engine,
filename]
subprocess.run(args, stdout=PIPE, stderr=PIPE, cwd=app.outdir, check=True)
with cd(app.outdir):
ensuredir(app.config.latex_engine)
# keep a copy of latex file for this engine in case test fails
copyfile(filename, app.config.latex_engine + '/' + filename)
args = [app.config.latex_engine,
'--halt-on-error',
'--interaction=nonstopmode',
'-output-directory=%s' % app.config.latex_engine,
filename]
subprocess.run(args, stdout=PIPE, stderr=PIPE, check=True)
except OSError: # most likely the latex executable was not found
raise pytest.skip.Exception
except CalledProcessError as exc: