intersphinx: more role testing

This commit is contained in:
Jakob Lykke Andersen 2021-07-13 12:39:26 +02:00
parent 35dcc60a7c
commit 8605644e83
2 changed files with 29 additions and 27 deletions

View File

@ -4,8 +4,22 @@
.. py:module:: module1
:intersphinx:py:func:`func`
:intersphinx:py:func:`inv:func`
:intersphinx:py:meth:`Foo.bar`
:intersphinx:py:meth:`inv:Foo.bar`
:intersphinx:c:func:`CFunc`
:intersphinx:c:func:`inv:CFunc`
:intersphinx:doc:`docname`
:intersphinx:doc:`inv:docname`
:intersphinx:option:`ls -l`
:intersphinx:option:`inv:ls -l`
.. cpp:type:: std::uint8_t
.. cpp:class:: foo::Bar
:intersphinx:cpp:type:`std::uint8_t`
:intersphinx:cpp:class:`inv:foo::Bar`
:intersphinx:cpp:type:`FoonsTitle <foons>`
:intersphinx:cpp:type:`inv:BarType <foons::bartype>`

View File

@ -543,30 +543,18 @@ def test_intersphinx_role(app):
app.build()
content = (app.outdir / 'index.html').read_text()
# :intersphinx:py:module:`module1`
assert ('<a class="reference external" href="http://example.org/foo.html#module-module1"'
' title="(in foo v2.0)">' in content)
# :intersphinx:py:module:`inv:module2`
assert ('<a class="reference external" href="http://example.org/foo.html#module-module2"'
' title="(in foo v2.0)">' in content)
# py:module + :intersphinx:py:function:`func`
assert ('<a class="reference external" href="http://example.org/sub/foo.html#module1.func"'
' title="(in foo v2.0)">' in content)
# py:module + :intersphinx:py:method:`Foo.bar`
assert ('<a class="reference external" href="http://example.org/index.html#foo.Bar.baz"'
' title="(in foo v2.0)">' in content)
# :intersphinx:c:function:`CFunc`
assert ('<a class="reference external" href="http://example.org/cfunc.html#CFunc"'
' title="(in foo v2.0)">' in content)
# :intersphinx:doc:`docname`
assert ('<a class="reference external" href="http://example.org/docname.html"'
' title="(in foo v2.0)">' in content)
# :intersphinx:option:`ls -l`
assert ('<a class="reference external" href="http://example.org/index.html#cmdoption-ls-l"'
' title="(in foo v2.0)">' in content)
targets = (
'foo.html#module-module1',
'foo.html#module-module2',
'sub/foo.html#module1.func',
'index.html#foo.Bar.baz',
'cfunc.html#CFunc',
'docname.html',
'index.html#cmdoption-ls-l',
'index.html#std_uint8_t',
'index.html#foons',
'index.html#foons_bartype',
)
html = '<a class="reference external" href="http://example.org/{}" title="(in foo v2.0)">'
for t in targets:
assert html.format(t) in content