summaryrefslogtreecommitdiffstats
path: root/tests/test_ext_imgconverter.py
diff options
context:
space:
mode:
authorDaniel Baumann <daniel.baumann@progress-linux.org>2024-05-04 11:31:33 +0000
committerDaniel Baumann <daniel.baumann@progress-linux.org>2024-05-04 11:31:33 +0000
commite863fd965dd6253243c3342bd6f0adc4fc8aec4d (patch)
treea4c1b6491a82593950043c3f8b2530e80664d768 /tests/test_ext_imgconverter.py
parentInitial commit. (diff)
downloadsphinx-e863fd965dd6253243c3342bd6f0adc4fc8aec4d.tar.xz
sphinx-e863fd965dd6253243c3342bd6f0adc4fc8aec4d.zip
Adding upstream version 5.3.0.upstream/5.3.0upstream
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to '')
-rw-r--r--tests/test_ext_imgconverter.py35
1 files changed, 35 insertions, 0 deletions
diff --git a/tests/test_ext_imgconverter.py b/tests/test_ext_imgconverter.py
new file mode 100644
index 0000000..8b938a0
--- /dev/null
+++ b/tests/test_ext_imgconverter.py
@@ -0,0 +1,35 @@
+"""Test sphinx.ext.imgconverter extension."""
+
+import subprocess
+from subprocess import PIPE
+
+import pytest
+
+
+@pytest.fixture
+def if_converter_found(app):
+ image_converter = getattr(app.config, 'image_converter', '')
+ try:
+ if image_converter:
+ subprocess.run([image_converter, '-version'], stdout=PIPE, stderr=PIPE) # show version
+ return
+ except OSError: # No such file or directory
+ pass
+
+ pytest.skip('image_converter "%s" is not available' % image_converter)
+
+
+@pytest.mark.usefixtures('if_converter_found')
+@pytest.mark.sphinx('latex', testroot='ext-imgconverter')
+def test_ext_imgconverter(app, status, warning):
+ app.builder.build_all()
+
+ content = (app.outdir / 'python.tex').read_text(encoding='utf8')
+
+ # supported image (not converted)
+ assert '\\sphinxincludegraphics{{img}.pdf}' in content
+
+ # non supported image (converted)
+ assert '\\sphinxincludegraphics{{svgimg}.png}' in content
+ assert not (app.outdir / 'svgimg.svg').exists()
+ assert (app.outdir / 'svgimg.png').exists()