1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129
|
From: Dmitry Shachnev <mitya57@debian.org>
Date: Sat, 27 Sep 2025 00:42:25 +0300
Subject: Update the test expectations for Docutils 0.22
Forwarded: https://github.com/wasi-master/rich-rst/pull/17
---
tests/test_main.py | 17 ++++++++++++++++-
tests/test_vectors/directives_expected.html | 16 ++++++++--------
tests/test_vectors/specification_expected.html | 19 +++++++++++++------
3 files changed, 37 insertions(+), 15 deletions(-)
diff --git a/tests/test_main.py b/tests/test_main.py
index 3347d86..397212c 100644
--- a/tests/test_main.py
+++ b/tests/test_main.py
@@ -1,3 +1,4 @@
+import docutils
import pytest
from rich_rst import RestructuredText
from pathlib import Path
@@ -6,6 +7,10 @@ from rich.terminal_theme import TerminalTheme
test_vectors_path = Path("tests/test_vectors")
rst_paths = sorted(str(x) for x in test_vectors_path.glob("*.rst"))
+docutils_0_22_mark = pytest.mark.skipif(
+ docutils.__version_info__ < (0, 22),
+ reason="requires docutils 0.22 or higher",
+)
def render_to_html(rst):
@@ -38,7 +43,17 @@ def render_to_html(rst):
return console.export_html(theme=DRACULA_TERMINAL_THEME)
-@pytest.mark.parametrize("rst_path", rst_paths)
+@pytest.mark.parametrize(
+ "rst_path",
+ [
+ (
+ pytest.param(path, marks=docutils_0_22_mark)
+ if path.endswith(("directives.rst", "specification.rst"))
+ else path
+ )
+ for path in rst_paths
+ ],
+)
def test_main(rst_path):
rst_path = Path(rst_path)
actual_html_path = rst_path.parent / (rst_path.stem + "_actual.html")
diff --git a/tests/test_vectors/directives_expected.html b/tests/test_vectors/directives_expected.html
index 416e5e1..7b00afd 100644
--- a/tests/test_vectors/directives_expected.html
+++ b/tests/test_vectors/directives_expected.html
@@ -1714,28 +1714,28 @@ references to the element using text as reference name. Specifying the name opt
bild.png :name: my picture is a concise syntax alternative to preceding it with a hyperlink target .. _my picture:
.. image:: bild.png
<span class="r23">╭───────────────────────────────── System Message: INFO/1 (<rst-document>, line 982); ─────────────────────────────────╮</span>
-<span class="r23">│</span> <span class="r1"><</span><span class="r24">rst-document</span><span class="r1">></span>:<span class="r23">982</span>: <span class="r1">(</span>INFO/<span class="r23">1</span><span class="r1">)</span> Duplicate implicit target name: <span class="r25">"contents"</span>. <span class="r23">│</span>
+<span class="r23">│</span> <span class="r1"><</span><span class="r24">rst-document</span><span class="r1">></span>:<span class="r23">982</span>: <span class="r1">(</span>INFO/<span class="r23">1</span><span class="r1">)</span> Target name overrides implicit target name <span class="r25">"contents"</span>. <span class="r23">│</span>
<span class="r23">╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</span>
<span class="r23">╭──────────────────────────────── System Message: INFO/1 (<rst-document>, line 1965); ─────────────────────────────────╮</span>
-<span class="r23">│</span> <span class="r1"><</span><span class="r24">rst-document</span><span class="r1">></span>:<span class="r23">1965</span>: <span class="r1">(</span>INFO/<span class="r23">1</span><span class="r1">)</span> Duplicate implicit target name: <span class="r25">"class"</span>. <span class="r23">│</span>
+<span class="r23">│</span> <span class="r1"><</span><span class="r24">rst-document</span><span class="r1">></span>:<span class="r23">1965</span>: <span class="r1">(</span>INFO/<span class="r23">1</span><span class="r1">)</span> Target name overrides implicit target name <span class="r25">"class"</span>. <span class="r23">│</span>
<span class="r23">╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</span>
<span class="r23">╭──────────────────────────────── System Message: INFO/1 (<rst-document>, line 2006); ─────────────────────────────────╮</span>
-<span class="r23">│</span> <span class="r1"><</span><span class="r24">rst-document</span><span class="r1">></span>:<span class="r23">2006</span>: <span class="r1">(</span>INFO/<span class="r23">1</span><span class="r1">)</span> Duplicate implicit target name: <span class="r25">"figure"</span>. <span class="r23">│</span>
+<span class="r23">│</span> <span class="r1"><</span><span class="r24">rst-document</span><span class="r1">></span>:<span class="r23">2006</span>: <span class="r1">(</span>INFO/<span class="r23">1</span><span class="r1">)</span> Target name overrides implicit target name <span class="r25">"figure"</span>. <span class="r23">│</span>
<span class="r23">╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</span>
<span class="r23">╭──────────────────────────────── System Message: INFO/1 (<rst-document>, line 2010); ─────────────────────────────────╮</span>
-<span class="r23">│</span> <span class="r1"><</span><span class="r24">rst-document</span><span class="r1">></span>:<span class="r23">2010</span>: <span class="r1">(</span>INFO/<span class="r23">1</span><span class="r1">)</span> Duplicate implicit target name: <span class="r25">"image"</span>. <span class="r23">│</span>
+<span class="r23">│</span> <span class="r1"><</span><span class="r24">rst-document</span><span class="r1">></span>:<span class="r23">2010</span>: <span class="r1">(</span>INFO/<span class="r23">1</span><span class="r1">)</span> Target name overrides implicit target name <span class="r25">"image"</span>. <span class="r23">│</span>
<span class="r23">╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</span>
<span class="r23">╭──────────────────────────────── System Message: INFO/1 (<rst-document>, line 2022); ─────────────────────────────────╮</span>
-<span class="r23">│</span> <span class="r1"><</span><span class="r24">rst-document</span><span class="r1">></span>:<span class="r23">2022</span>: <span class="r1">(</span>INFO/<span class="r23">1</span><span class="r1">)</span> Duplicate implicit target name: <span class="r25">"rubric"</span>. <span class="r23">│</span>
+<span class="r23">│</span> <span class="r1"><</span><span class="r24">rst-document</span><span class="r1">></span>:<span class="r23">2022</span>: <span class="r1">(</span>INFO/<span class="r23">1</span><span class="r1">)</span> Target name overrides implicit target name <span class="r25">"rubric"</span>. <span class="r23">│</span>
<span class="r23">╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</span>
<span class="r23">╭──────────────────────────────── System Message: INFO/1 (<rst-document>, line 2023); ─────────────────────────────────╮</span>
-<span class="r23">│</span> <span class="r1"><</span><span class="r24">rst-document</span><span class="r1">></span>:<span class="r23">2023</span>: <span class="r1">(</span>INFO/<span class="r23">1</span><span class="r1">)</span> Duplicate implicit target name: <span class="r25">"sidebar"</span>. <span class="r23">│</span>
+<span class="r23">│</span> <span class="r1"><</span><span class="r24">rst-document</span><span class="r1">></span>:<span class="r23">2023</span>: <span class="r1">(</span>INFO/<span class="r23">1</span><span class="r1">)</span> Target name overrides implicit target name <span class="r25">"sidebar"</span>. <span class="r23">│</span>
<span class="r23">╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</span>
<span class="r23">╭──────────────────────────────── System Message: INFO/1 (<rst-document>, line 2024); ─────────────────────────────────╮</span>
-<span class="r23">│</span> <span class="r1"><</span><span class="r24">rst-document</span><span class="r1">></span>:<span class="r23">2024</span>: <span class="r1">(</span>INFO/<span class="r23">1</span><span class="r1">)</span> Duplicate implicit target name: <span class="r25">"table"</span>. <span class="r23">│</span>
+<span class="r23">│</span> <span class="r1"><</span><span class="r24">rst-document</span><span class="r1">></span>:<span class="r23">2024</span>: <span class="r1">(</span>INFO/<span class="r23">1</span><span class="r1">)</span> Target name overrides implicit target name <span class="r25">"table"</span>. <span class="r23">│</span>
<span class="r23">╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</span>
<span class="r23">╭──────────────────────────────── System Message: INFO/1 (<rst-document>, line 2027); ─────────────────────────────────╮</span>
-<span class="r23">│</span> <span class="r1"><</span><span class="r24">rst-document</span><span class="r1">></span>:<span class="r23">2027</span>: <span class="r1">(</span>INFO/<span class="r23">1</span><span class="r1">)</span> Duplicate implicit target name: <span class="r25">"topic"</span>. <span class="r23">│</span>
+<span class="r23">│</span> <span class="r1"><</span><span class="r24">rst-document</span><span class="r1">></span>:<span class="r23">2027</span>: <span class="r1">(</span>INFO/<span class="r23">1</span><span class="r1">)</span> Target name overrides implicit target name <span class="r25">"topic"</span>. <span class="r23">│</span>
<span class="r23">╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</span>
<span class="r26">┌─────────────────────────────────────────────────────── Footer ───────────────────────────────────────────────────────┐</span>
<span class="r26">│</span> "Metadata" is data about data, in this case data about the <span class="r26">│</span>
diff --git a/tests/test_vectors/specification_expected.html b/tests/test_vectors/specification_expected.html
index 11fe696..cd443a2 100644
--- a/tests/test_vectors/specification_expected.html
+++ b/tests/test_vectors/specification_expected.html
@@ -2172,20 +2172,27 @@ someone@somewhere.com
<span class="r4">Doctree elements: </span><a class="r3" href="../doctree.html#system-message">system_message</a><span class="r4">, </span><a class="r3" href="../doctree.html#problematic">problematic</a><span class="r4">.</span>
<span class="r4">Markup errors are handled according to the specification in </span><a class="r3" href="../../peps/pep-0258.html">PEP 258</a><span class="r4">.</span>
-<span class="r26">╭────────────────────────────────── System Message: INFO/1 (<rst-document>, line 5); ──────────────────────────────────╮</span>
-<span class="r26">│</span> <span class="r1"><</span><span class="r27">rst-document</span><span class="r1">></span>:<span class="r26">5</span>: <span class="r1">(</span>INFO/<span class="r26">1</span><span class="r1">)</span> Enumerated list start value not ordinal-<span class="r26">1</span>: <span class="r28">"6"</span> <span class="r1">(</span>ordinal <span class="r26">6</span><span class="r1">)</span> <span class="r26">│</span>
+<span class="r26">╭───────────────────────────────── System Message: INFO/1 (<rst-document>, line 457); ─────────────────────────────────╮</span>
+<span class="r26">│</span> <span class="r1"><</span><span class="r27">rst-document</span><span class="r1">></span>:<span class="r26">457</span>: <span class="r1">(</span>INFO/<span class="r26">1</span><span class="r1">)</span> Duplicate implicit target name: <span class="r28">"document"</span>. <span class="r26">│</span>
+<span class="r26">╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</span>
+<span class="r26">╭──────────────────────────────── System Message: INFO/1 (<rst-document>, line 2525); ─────────────────────────────────╮</span>
+<span class="r26">│</span> <span class="r1"><</span><span class="r27">rst-document</span><span class="r1">></span>:<span class="r26">2525</span>: <span class="r1">(</span>INFO/<span class="r26">1</span><span class="r1">)</span> Enumerated list start value not ordinal-<span class="r26">1</span>: <span class="r28">"6"</span> <span class="r1">(</span>ordinal <span class="r26">6</span><span class="r1">)</span> <span class="r26">│</span>
+<span class="r26">╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</span>
+<span class="r26">╭──────────────────────────────── System Message: INFO/1 (<rst-document>, line 2925); ─────────────────────────────────╮</span>
+<span class="r26">│</span> <span class="r1"><</span><span class="r27">rst-document</span><span class="r1">></span>:<span class="r26">2925</span>: <span class="r1">(</span>INFO/<span class="r26">1</span><span class="r1">)</span> Duplicate name <span class="r28">"footnote_references"</span> for external target <span class="r28">"footnote_references </span> <span class="r26">│</span>
+<span class="r26">│</span> <span class="r28">setting"</span>. <span class="r26">│</span>
<span class="r26">╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</span>
<span class="r26">╭──────────────────────────────── System Message: INFO/1 (<rst-document>, line 3197); ─────────────────────────────────╮</span>
-<span class="r26">│</span> <span class="r1"><</span><span class="r27">rst-document</span><span class="r1">></span>:<span class="r26">3197</span>: <span class="r1">(</span>INFO/<span class="r26">1</span><span class="r1">)</span> Duplicate explicit target name: <span class="r28">"topic"</span>. <span class="r26">│</span>
+<span class="r26">│</span> <span class="r1"><</span><span class="r27">rst-document</span><span class="r1">></span>:<span class="r26">3197</span>: <span class="r1">(</span>INFO/<span class="r26">1</span><span class="r1">)</span> Duplicate name <span class="r28">"topic"</span> for external target <span class="r28">"../doctree.html#topic"</span>. <span class="r26">│</span>
<span class="r26">╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</span>
<span class="r26">╭──────────────────────────────── System Message: INFO/1 (<rst-document>, line 3208); ─────────────────────────────────╮</span>
-<span class="r26">│</span> <span class="r1"><</span><span class="r27">rst-document</span><span class="r1">></span>:<span class="r26">3208</span>: <span class="r1">(</span>INFO/<span class="r26">1</span><span class="r1">)</span> Duplicate explicit target name: <span class="r28">"list_item"</span>. <span class="r26">│</span>
+<span class="r26">│</span> <span class="r1"><</span><span class="r27">rst-document</span><span class="r1">></span>:<span class="r26">3208</span>: <span class="r1">(</span>INFO/<span class="r26">1</span><span class="r1">)</span> Duplicate name <span class="r28">"list_item"</span> for external target <span class="r28">"../doctree.html#list-item"</span>. <span class="r26">│</span>
<span class="r26">╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</span>
<span class="r26">╭──────────────────────────────── System Message: INFO/1 (<rst-document>, line 3254); ─────────────────────────────────╮</span>
-<span class="r26">│</span> <span class="r1"><</span><span class="r27">rst-document</span><span class="r1">></span>:<span class="r26">3254</span>: <span class="r1">(</span>INFO/<span class="r26">1</span><span class="r1">)</span> Duplicate explicit target name: <span class="r28">"reference"</span>. <span class="r26">│</span>
+<span class="r26">│</span> <span class="r1"><</span><span class="r27">rst-document</span><span class="r1">></span>:<span class="r26">3254</span>: <span class="r1">(</span>INFO/<span class="r26">1</span><span class="r1">)</span> Duplicate name <span class="r28">"reference"</span> for external target <span class="r28">"../doctree.html#reference"</span>. <span class="r26">│</span>
<span class="r26">╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</span>
<span class="r26">╭──────────────────────────────── System Message: INFO/1 (<rst-document>, line 3255); ─────────────────────────────────╮</span>
-<span class="r26">│</span> <span class="r1"><</span><span class="r27">rst-document</span><span class="r1">></span>:<span class="r26">3255</span>: <span class="r1">(</span>INFO/<span class="r26">1</span><span class="r1">)</span> Duplicate explicit target name: <span class="r28">"reference"</span>. <span class="r26">│</span>
+<span class="r26">│</span> <span class="r1"><</span><span class="r27">rst-document</span><span class="r1">></span>:<span class="r26">3255</span>: <span class="r1">(</span>INFO/<span class="r26">1</span><span class="r1">)</span> Duplicate name <span class="r28">"reference"</span> for external target <span class="r28">"../doctree.html#reference"</span>. <span class="r26">│</span>
<span class="r26">╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</span>
<span class="r29">┌─────────────────────────────────────────────────────── Footer ───────────────────────────────────────────────────────┐</span>
<span class="r29">│</span> In LaTeX, the default definition is 1Â px = 1/72Â in (cf. How to <span class="r29">│</span>
|