diff options
Diffstat (limited to 'tests/test_markup.py')
-rw-r--r-- | tests/test_markup.py | 20 |
1 files changed, 18 insertions, 2 deletions
diff --git a/tests/test_markup.py b/tests/test_markup.py index 1b41dc69a..5fb835605 100644 --- a/tests/test_markup.py +++ b/tests/test_markup.py @@ -13,7 +13,6 @@ import re import pytest from docutils import frontend, utils, nodes from docutils.parsers.rst import Parser as RstParser -from docutils.transforms.universal import SmartQuotes from sphinx import addnodes from sphinx.builders.html.transforms import KeyboardTransform @@ -21,6 +20,8 @@ from sphinx.builders.latex import LaTeXBuilder from sphinx.builders.latex.theming import ThemeFactory from sphinx.roles import XRefRole from sphinx.testing.util import Struct, assert_node +from sphinx.transforms import SphinxSmartQuotes +from sphinx.util import docutils from sphinx.util import texescape from sphinx.util.docutils import sphinx_domains from sphinx.writers.html import HTMLWriter, HTMLTranslator @@ -67,7 +68,7 @@ def parse(new_document): document = new_document() parser = RstParser() parser.parse(rst, document) - SmartQuotes(document, startnode=None).apply() + SphinxSmartQuotes(document, startnode=None).apply() for msg in document.traverse(nodes.system_message): if msg['level'] == 1: msg.replace_self([]) @@ -349,6 +350,21 @@ def test_inline(get_verifier, type, rst, html_expected, latex_expected): verifier(rst, html_expected, latex_expected) +@pytest.mark.parametrize('type,rst,html_expected,latex_expected', [ + ( + 'verify', + r'4 backslashes \\\\', + r'<p>4 backslashes \\</p>', + None, + ), +]) +@pytest.mark.skipif(docutils.__version_info__ < (0, 16), + reason='docutils-0.16 or above is required') +def test_inline_docutils16(get_verifier, type, rst, html_expected, latex_expected): + verifier = get_verifier(type) + verifier(rst, html_expected, latex_expected) + + @pytest.mark.sphinx(confoverrides={'latex_engine': 'xelatex'}) @pytest.mark.parametrize('type,rst,html_expected,latex_expected', [ ( |