Merge pull request #10271 from tk0miya/10267_update_test_markup

test: Fix test_markup does not use default settings for docutils
This commit is contained in:
Takeshi KOMIYA 2022-03-20 01:48:51 +09:00 committed by GitHub
commit a227d4a546
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -9,6 +9,7 @@ from docutils.parsers.rst import Parser as RstParser
from sphinx import addnodes
from sphinx.builders.html.transforms import KeyboardTransform
from sphinx.builders.latex import LaTeXBuilder
from sphinx.environment import default_settings
from sphinx.roles import XRefRole
from sphinx.testing.util import Struct, assert_node
from sphinx.transforms import SphinxSmartQuotes
@ -22,13 +23,13 @@ from sphinx.writers.latex import LaTeXTranslator, LaTeXWriter
def settings(app):
texescape.init() # otherwise done by the latex builder
optparser = frontend.OptionParser(
components=(RstParser, HTMLWriter, LaTeXWriter))
components=(RstParser, HTMLWriter, LaTeXWriter),
defaults=default_settings)
settings = optparser.get_default_values()
settings.smart_quotes = True
settings.env = app.builder.env
settings.env.temp_data['docname'] = 'dummy'
settings.contentsname = 'dummy'
settings.rfc_base_url = 'http://datatracker.ietf.org/doc/html/'
domain_context = sphinx_domains(settings.env)
domain_context.enable()
yield settings
@ -146,39 +147,37 @@ def get_verifier(verify, verify_re):
@pytest.mark.parametrize('type,rst,html_expected,latex_expected', [
(
# pep role
'verify_re',
'verify',
':pep:`8`',
# since docutils-0.19, :pep: role points to python.org via https schema
('<p><span class="target" id="index-0"></span><a class="pep reference external" '
'href="https?://(www.python.org/dev/peps|peps.python.org)/pep-0008"><strong>PEP 8</strong></a></p>'),
(r'\\sphinxAtStartPar\n'
r'\\index{Python Enhancement Proposals@\\spxentry{Python Enhancement Proposals}'
r'!PEP 8@\\spxentry{PEP 8}}\\sphinxhref{https?://(www.python.org/dev/peps|peps.python.org)/pep-0008}'
r'{\\sphinxstylestrong{PEP 8}}')
'href="https://peps.python.org/pep-0008"><strong>PEP 8</strong></a></p>'),
('\\sphinxAtStartPar\n'
'\\index{Python Enhancement Proposals@\\spxentry{Python Enhancement Proposals}'
'!PEP 8@\\spxentry{PEP 8}}\\sphinxhref{https://peps.python.org/pep-0008}'
'{\\sphinxstylestrong{PEP 8}}')
),
(
# pep role with anchor
'verify_re',
'verify',
':pep:`8#id1`',
# since docutils-0.19, :pep: role points to python.org via https schema
('<p><span class="target" id="index-0"></span><a class="pep reference external" '
'href="https?://(www.python.org/dev/peps|peps.python.org)/pep-0008#id1">'
'href="https://peps.python.org/pep-0008#id1">'
'<strong>PEP 8#id1</strong></a></p>'),
(r'\\sphinxAtStartPar\n'
r'\\index{Python Enhancement Proposals@\\spxentry{Python Enhancement Proposals}'
r'!PEP 8\\#id1@\\spxentry{PEP 8\\#id1}}\\sphinxhref'
r'{https?://(www.python.org/dev/peps|peps.python.org)/pep-0008\\#id1}'
r'{\\sphinxstylestrong{PEP 8\\#id1}}')
('\\sphinxAtStartPar\n'
'\\index{Python Enhancement Proposals@\\spxentry{Python Enhancement Proposals}'
'!PEP 8\\#id1@\\spxentry{PEP 8\\#id1}}\\sphinxhref'
'{https://peps.python.org/pep-0008\\#id1}'
'{\\sphinxstylestrong{PEP 8\\#id1}}')
),
(
# rfc role
'verify',
':rfc:`2324`',
('<p><span class="target" id="index-0"></span><a class="rfc reference external" '
'href="http://datatracker.ietf.org/doc/html/rfc2324.html"><strong>RFC 2324</strong></a></p>'),
'href="https://datatracker.ietf.org/doc/html/rfc2324.html"><strong>RFC 2324</strong></a></p>'),
('\\sphinxAtStartPar\n'
'\\index{RFC@\\spxentry{RFC}!RFC 2324@\\spxentry{RFC 2324}}'
'\\sphinxhref{http://datatracker.ietf.org/doc/html/rfc2324.html}'
'\\sphinxhref{https://datatracker.ietf.org/doc/html/rfc2324.html}'
'{\\sphinxstylestrong{RFC 2324}}')
),
(
@ -186,11 +185,11 @@ def get_verifier(verify, verify_re):
'verify',
':rfc:`2324#id1`',
('<p><span class="target" id="index-0"></span><a class="rfc reference external" '
'href="http://datatracker.ietf.org/doc/html/rfc2324.html#id1">'
'href="https://datatracker.ietf.org/doc/html/rfc2324.html#id1">'
'<strong>RFC 2324#id1</strong></a></p>'),
('\\sphinxAtStartPar\n'
'\\index{RFC@\\spxentry{RFC}!RFC 2324\\#id1@\\spxentry{RFC 2324\\#id1}}'
'\\sphinxhref{http://datatracker.ietf.org/doc/html/rfc2324.html\\#id1}'
'\\sphinxhref{https://datatracker.ietf.org/doc/html/rfc2324.html\\#id1}'
'{\\sphinxstylestrong{RFC 2324\\#id1}}')
),
(