summaryrefslogtreecommitdiffstats
path: root/tests/test_renderers/test_myst_refs
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--tests/test_renderers/test_myst_refs.py38
-rw-r--r--tests/test_renderers/test_myst_refs/doc.xml5
-rw-r--r--tests/test_renderers/test_myst_refs/doc_nested.xml6
-rw-r--r--tests/test_renderers/test_myst_refs/doc_with_extension.xml5
-rw-r--r--tests/test_renderers/test_myst_refs/duplicate.xml9
-rw-r--r--tests/test_renderers/test_myst_refs/missing.xml3
-rw-r--r--tests/test_renderers/test_myst_refs/null.xml1
-rw-r--r--tests/test_renderers/test_myst_refs/ref.xml9
-rw-r--r--tests/test_renderers/test_myst_refs/ref_colon.xml9
-rw-r--r--tests/test_renderers/test_myst_refs/ref_nested.xml10
10 files changed, 95 insertions, 0 deletions
diff --git a/tests/test_renderers/test_myst_refs.py b/tests/test_renderers/test_myst_refs.py
new file mode 100644
index 0000000..083b34a
--- /dev/null
+++ b/tests/test_renderers/test_myst_refs.py
@@ -0,0 +1,38 @@
+import pytest
+from sphinx_pytest.plugin import CreateDoctree
+
+
+@pytest.mark.parametrize(
+ "test_name,text,should_warn",
+ [
+ ("null", "", False),
+ ("missing", "[](ref)", True),
+ ("doc", "[](index)", False),
+ ("doc_with_extension", "[](index.md)", False),
+ ("doc_nested", "[*text*](index)", False),
+ ("ref", "(ref)=\n# Title\n[](ref)", False),
+ ("ref_nested", "(ref)=\n# Title\n[*text*](ref)", False),
+ ("duplicate", "(index)=\n# Title\n[](index)", True),
+ ("ref_colon", "(ref:colon)=\n# Title\n[](ref:colon)", False),
+ ],
+)
+def test_parse(
+ test_name: str,
+ text: str,
+ should_warn: bool,
+ sphinx_doctree: CreateDoctree,
+ file_regression,
+):
+ sphinx_doctree.set_conf({"extensions": ["myst_parser"]})
+ result = sphinx_doctree(text, "index.md")
+ assert not result.warnings
+
+ doctree = result.get_resolved_doctree("index")
+
+ if should_warn:
+ assert result.warnings
+ else:
+ assert not result.warnings
+
+ doctree["source"] = "root/index.md"
+ file_regression.check(doctree.pformat(), basename=test_name, extension=".xml")
diff --git a/tests/test_renderers/test_myst_refs/doc.xml b/tests/test_renderers/test_myst_refs/doc.xml
new file mode 100644
index 0000000..55cb74c
--- /dev/null
+++ b/tests/test_renderers/test_myst_refs/doc.xml
@@ -0,0 +1,5 @@
+<document source="root/index.md">
+ <paragraph>
+ <reference internal="True" refuri="">
+ <inline classes="doc std std-doc">
+ <no title>
diff --git a/tests/test_renderers/test_myst_refs/doc_nested.xml b/tests/test_renderers/test_myst_refs/doc_nested.xml
new file mode 100644
index 0000000..35679d9
--- /dev/null
+++ b/tests/test_renderers/test_myst_refs/doc_nested.xml
@@ -0,0 +1,6 @@
+<document source="root/index.md">
+ <paragraph>
+ <reference internal="True" refuri="">
+ <inline classes="doc std std-doc">
+ <emphasis>
+ text
diff --git a/tests/test_renderers/test_myst_refs/doc_with_extension.xml b/tests/test_renderers/test_myst_refs/doc_with_extension.xml
new file mode 100644
index 0000000..55cb74c
--- /dev/null
+++ b/tests/test_renderers/test_myst_refs/doc_with_extension.xml
@@ -0,0 +1,5 @@
+<document source="root/index.md">
+ <paragraph>
+ <reference internal="True" refuri="">
+ <inline classes="doc std std-doc">
+ <no title>
diff --git a/tests/test_renderers/test_myst_refs/duplicate.xml b/tests/test_renderers/test_myst_refs/duplicate.xml
new file mode 100644
index 0000000..755906c
--- /dev/null
+++ b/tests/test_renderers/test_myst_refs/duplicate.xml
@@ -0,0 +1,9 @@
+<document source="root/index.md">
+ <target refid="index">
+ <section ids="title index" names="title index">
+ <title>
+ Title
+ <paragraph>
+ <reference internal="True" refid="index">
+ <inline classes="std std-ref">
+ Title
diff --git a/tests/test_renderers/test_myst_refs/missing.xml b/tests/test_renderers/test_myst_refs/missing.xml
new file mode 100644
index 0000000..6bc72ad
--- /dev/null
+++ b/tests/test_renderers/test_myst_refs/missing.xml
@@ -0,0 +1,3 @@
+<document source="root/index.md">
+ <paragraph>
+ <inline classes="xref myst">
diff --git a/tests/test_renderers/test_myst_refs/null.xml b/tests/test_renderers/test_myst_refs/null.xml
new file mode 100644
index 0000000..d09aa5e
--- /dev/null
+++ b/tests/test_renderers/test_myst_refs/null.xml
@@ -0,0 +1 @@
+<document source="root/index.md">
diff --git a/tests/test_renderers/test_myst_refs/ref.xml b/tests/test_renderers/test_myst_refs/ref.xml
new file mode 100644
index 0000000..e4ae200
--- /dev/null
+++ b/tests/test_renderers/test_myst_refs/ref.xml
@@ -0,0 +1,9 @@
+<document source="root/index.md">
+ <target refid="ref">
+ <section ids="title ref" names="title ref">
+ <title>
+ Title
+ <paragraph>
+ <reference internal="True" refid="ref">
+ <inline classes="std std-ref">
+ Title
diff --git a/tests/test_renderers/test_myst_refs/ref_colon.xml b/tests/test_renderers/test_myst_refs/ref_colon.xml
new file mode 100644
index 0000000..f1e9923
--- /dev/null
+++ b/tests/test_renderers/test_myst_refs/ref_colon.xml
@@ -0,0 +1,9 @@
+<document source="root/index.md">
+ <target refid="ref-colon">
+ <section ids="title ref-colon" names="title ref:colon">
+ <title>
+ Title
+ <paragraph>
+ <reference internal="True" refid="ref-colon">
+ <inline classes="std std-ref">
+ Title
diff --git a/tests/test_renderers/test_myst_refs/ref_nested.xml b/tests/test_renderers/test_myst_refs/ref_nested.xml
new file mode 100644
index 0000000..be69ef2
--- /dev/null
+++ b/tests/test_renderers/test_myst_refs/ref_nested.xml
@@ -0,0 +1,10 @@
+<document source="root/index.md">
+ <target refid="ref">
+ <section ids="title ref" names="title ref">
+ <title>
+ Title
+ <paragraph>
+ <reference internal="True" refid="ref">
+ <inline classes="std std-ref">
+ <emphasis>
+ text