summaryrefslogtreecommitdiffstats
path: root/tests/roots/test-ext-imgmockconverter
diff options
context:
space:
mode:
Diffstat (limited to 'tests/roots/test-ext-imgmockconverter')
-rw-r--r--tests/roots/test-ext-imgmockconverter/1/svgimg.svg3
-rw-r--r--tests/roots/test-ext-imgmockconverter/2/svgimg.svg4
-rw-r--r--tests/roots/test-ext-imgmockconverter/conf.py5
-rw-r--r--tests/roots/test-ext-imgmockconverter/index.rst6
-rw-r--r--tests/roots/test-ext-imgmockconverter/mocksvgconverter.py39
5 files changed, 57 insertions, 0 deletions
diff --git a/tests/roots/test-ext-imgmockconverter/1/svgimg.svg b/tests/roots/test-ext-imgmockconverter/1/svgimg.svg
new file mode 100644
index 0000000..981e301
--- /dev/null
+++ b/tests/roots/test-ext-imgmockconverter/1/svgimg.svg
@@ -0,0 +1,3 @@
+<svg viewBox="0 0 100 100" xmlns="http://www.w3.org/2000/svg">
+ <circle cx="50" cy="50" r="50" />
+</svg>
diff --git a/tests/roots/test-ext-imgmockconverter/2/svgimg.svg b/tests/roots/test-ext-imgmockconverter/2/svgimg.svg
new file mode 100644
index 0000000..2bae0b9
--- /dev/null
+++ b/tests/roots/test-ext-imgmockconverter/2/svgimg.svg
@@ -0,0 +1,4 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" height="60" width="60">
+ <circle cx="40" cy="40" r="24" style="stroke:#000000; fill:#ffffff"/>
+</svg>
diff --git a/tests/roots/test-ext-imgmockconverter/conf.py b/tests/roots/test-ext-imgmockconverter/conf.py
new file mode 100644
index 0000000..679bb5a
--- /dev/null
+++ b/tests/roots/test-ext-imgmockconverter/conf.py
@@ -0,0 +1,5 @@
+import os
+import sys
+
+sys.path.insert(0, os.path.abspath('.'))
+extensions = ['mocksvgconverter']
diff --git a/tests/roots/test-ext-imgmockconverter/index.rst b/tests/roots/test-ext-imgmockconverter/index.rst
new file mode 100644
index 0000000..bc665f6
--- /dev/null
+++ b/tests/roots/test-ext-imgmockconverter/index.rst
@@ -0,0 +1,6 @@
+test-ext-imgconverter
+=====================
+
+.. image:: ./1/svgimg.svg
+.. image:: ./2/svgimg.svg
+
diff --git a/tests/roots/test-ext-imgmockconverter/mocksvgconverter.py b/tests/roots/test-ext-imgmockconverter/mocksvgconverter.py
new file mode 100644
index 0000000..43368de
--- /dev/null
+++ b/tests/roots/test-ext-imgmockconverter/mocksvgconverter.py
@@ -0,0 +1,39 @@
+"""
+ Does foo.svg --> foo.pdf with no change to the file.
+"""
+
+import shutil
+
+from sphinx.transforms.post_transforms.images import ImageConverter
+
+if False:
+ # For type annotation
+ from typing import Any, Dict # NOQA
+
+ from sphinx.application import Sphinx # NOQA
+
+class MyConverter(ImageConverter):
+ conversion_rules = [
+ ('image/svg+xml', 'application/pdf'),
+ ]
+
+ def is_available(self):
+ # type: () -> bool
+ return True
+
+ def convert(self, _from, _to):
+ # type: (unicode, unicode) -> bool
+ """Mock converts the image from SVG to PDF."""
+ shutil.copyfile(_from, _to)
+ return True
+
+
+def setup(app):
+ # type: (Sphinx) -> Dict[unicode, Any]
+ app.add_post_transform(MyConverter)
+
+ return {
+ 'version': 'builtin',
+ 'parallel_read_safe': True,
+ 'parallel_write_safe': True,
+ }