2022-02-19 18:06:24 -06:00
|
|
|
|
"""Test the sphinx.environment.managers.toctree.
|
2016-09-18 03:14:55 -05:00
|
|
|
|
"""
|
|
|
|
|
|
2018-02-19 07:39:14 -06:00
|
|
|
|
import pytest
|
2016-09-18 03:14:55 -05:00
|
|
|
|
from docutils import nodes
|
2021-04-03 10:09:54 -05:00
|
|
|
|
from docutils.nodes import bullet_list, comment, list_item, reference, title
|
2018-02-19 07:39:14 -06:00
|
|
|
|
|
2016-09-18 03:14:55 -05:00
|
|
|
|
from sphinx import addnodes
|
|
|
|
|
from sphinx.addnodes import compact_paragraph, only
|
|
|
|
|
from sphinx.builders.html import StandaloneHTMLBuilder
|
2017-07-31 08:30:37 -05:00
|
|
|
|
from sphinx.environment.adapters.toctree import TocTree
|
2017-05-07 02:46:44 -05:00
|
|
|
|
from sphinx.testing.util import assert_node
|
2016-09-18 03:14:55 -05:00
|
|
|
|
|
|
|
|
|
|
2017-01-06 09:46:26 -06:00
|
|
|
|
@pytest.mark.sphinx('xml', testroot='toctree')
|
|
|
|
|
@pytest.mark.test_params(shared_result='test_environment_toctree_basic')
|
|
|
|
|
def test_process_doc(app):
|
2016-09-18 03:14:55 -05:00
|
|
|
|
app.build()
|
|
|
|
|
# tocs
|
|
|
|
|
toctree = app.env.tocs['index']
|
|
|
|
|
assert_node(toctree,
|
|
|
|
|
[bullet_list, ([list_item, (compact_paragraph, # [0][0]
|
|
|
|
|
[bullet_list, (addnodes.toctree, # [0][1][0]
|
|
|
|
|
only, # [0][1][1]
|
|
|
|
|
list_item)])], # [0][1][2]
|
|
|
|
|
[list_item, (compact_paragraph, # [1][0]
|
|
|
|
|
[bullet_list, (addnodes.toctree, # [1][1][0]
|
|
|
|
|
addnodes.toctree)])], # [1][1][1]
|
|
|
|
|
list_item)])
|
|
|
|
|
|
|
|
|
|
assert_node(toctree[0][0],
|
2018-12-15 08:02:28 -06:00
|
|
|
|
[compact_paragraph, reference, "Welcome to Sphinx Tests’s documentation!"])
|
2016-09-18 03:14:55 -05:00
|
|
|
|
assert_node(toctree[0][0][0], reference, anchorname='')
|
|
|
|
|
assert_node(toctree[0][1][0], addnodes.toctree,
|
|
|
|
|
caption="Table of Contents", glob=False, hidden=False,
|
|
|
|
|
titlesonly=False, maxdepth=2, numbered=999,
|
2019-02-03 06:34:58 -06:00
|
|
|
|
entries=[(None, 'foo'), (None, 'bar'), (None, 'http://sphinx-doc.org/'),
|
|
|
|
|
(None, 'self')],
|
2016-09-18 03:14:55 -05:00
|
|
|
|
includefiles=['foo', 'bar'])
|
|
|
|
|
|
|
|
|
|
# only branch
|
|
|
|
|
assert_node(toctree[0][1][1], addnodes.only, expr="html")
|
|
|
|
|
assert_node(toctree[0][1][1],
|
|
|
|
|
[only, list_item, ([compact_paragraph, reference, "Section for HTML"],
|
|
|
|
|
[bullet_list, addnodes.toctree])])
|
|
|
|
|
assert_node(toctree[0][1][1][0][0][0], reference, anchorname='#section-for-html')
|
|
|
|
|
assert_node(toctree[0][1][1][0][1][0], addnodes.toctree,
|
|
|
|
|
caption=None, glob=False, hidden=False, entries=[(None, 'baz')],
|
|
|
|
|
includefiles=['baz'], titlesonly=False, maxdepth=-1, numbered=0)
|
|
|
|
|
assert_node(toctree[0][1][2],
|
|
|
|
|
([compact_paragraph, reference, "subsection"],
|
|
|
|
|
[bullet_list, list_item, compact_paragraph, reference, "subsubsection"]))
|
|
|
|
|
|
|
|
|
|
assert_node(toctree[1][0],
|
|
|
|
|
[compact_paragraph, reference, "Test for issue #1157"])
|
|
|
|
|
assert_node(toctree[1][0][0], reference, anchorname='#test-for-issue-1157')
|
|
|
|
|
assert_node(toctree[1][1][0], addnodes.toctree,
|
|
|
|
|
caption=None, entries=[], glob=False, hidden=False,
|
|
|
|
|
titlesonly=False, maxdepth=-1, numbered=0)
|
|
|
|
|
assert_node(toctree[1][1][1], addnodes.toctree,
|
|
|
|
|
caption=None, glob=False, hidden=True,
|
|
|
|
|
titlesonly=False, maxdepth=-1, numbered=0,
|
|
|
|
|
entries=[('Latest reference', 'http://sphinx-doc.org/latest/'),
|
|
|
|
|
('Python', 'http://python.org/')])
|
|
|
|
|
|
|
|
|
|
assert_node(toctree[2][0],
|
|
|
|
|
[compact_paragraph, reference, "Indices and tables"])
|
|
|
|
|
|
|
|
|
|
# other collections
|
|
|
|
|
assert app.env.toc_num_entries['index'] == 6
|
|
|
|
|
assert app.env.toctree_includes['index'] == ['foo', 'bar', 'baz']
|
2019-03-17 14:49:36 -05:00
|
|
|
|
assert app.env.files_to_rebuild['foo'] == {'index'}
|
|
|
|
|
assert app.env.files_to_rebuild['bar'] == {'index'}
|
|
|
|
|
assert app.env.files_to_rebuild['baz'] == {'index'}
|
2016-09-18 03:14:55 -05:00
|
|
|
|
assert app.env.glob_toctrees == set()
|
2019-03-17 14:49:36 -05:00
|
|
|
|
assert app.env.numbered_toctrees == {'index'}
|
2016-09-18 03:14:55 -05:00
|
|
|
|
|
|
|
|
|
# qux has no section title
|
|
|
|
|
assert len(app.env.tocs['qux']) == 0
|
|
|
|
|
assert_node(app.env.tocs['qux'], nodes.bullet_list)
|
|
|
|
|
assert app.env.toc_num_entries['qux'] == 0
|
|
|
|
|
assert 'qux' not in app.env.toctree_includes
|
|
|
|
|
|
|
|
|
|
|
2017-01-05 10:14:47 -06:00
|
|
|
|
@pytest.mark.sphinx('dummy', testroot='toctree-glob')
|
2017-01-06 09:46:26 -06:00
|
|
|
|
def test_glob(app):
|
2016-09-18 03:14:55 -05:00
|
|
|
|
includefiles = ['foo', 'bar/index', 'bar/bar_1', 'bar/bar_2',
|
|
|
|
|
'bar/bar_3', 'baz', 'qux/index']
|
|
|
|
|
|
|
|
|
|
app.build()
|
|
|
|
|
|
|
|
|
|
# tocs
|
|
|
|
|
toctree = app.env.tocs['index']
|
|
|
|
|
assert_node(toctree,
|
|
|
|
|
[bullet_list, list_item, (compact_paragraph, # [0][0]
|
2016-10-12 05:32:48 -05:00
|
|
|
|
[bullet_list, (list_item, # [0][1][0]
|
|
|
|
|
list_item)])]) # [0][1][1]
|
2016-09-18 03:14:55 -05:00
|
|
|
|
|
|
|
|
|
assert_node(toctree[0][0],
|
|
|
|
|
[compact_paragraph, reference, "test-toctree-glob"])
|
2016-10-12 05:32:48 -05:00
|
|
|
|
assert_node(toctree[0][1][0],
|
|
|
|
|
[list_item, ([compact_paragraph, reference, "normal order"],
|
|
|
|
|
[bullet_list, addnodes.toctree])]) # [0][1][0][1][0]
|
|
|
|
|
assert_node(toctree[0][1][0][1][0], addnodes.toctree, caption=None,
|
2016-09-18 03:14:55 -05:00
|
|
|
|
glob=True, hidden=False, titlesonly=False,
|
|
|
|
|
maxdepth=-1, numbered=0, includefiles=includefiles,
|
|
|
|
|
entries=[(None, 'foo'), (None, 'bar/index'), (None, 'bar/bar_1'),
|
|
|
|
|
(None, 'bar/bar_2'), (None, 'bar/bar_3'), (None, 'baz'),
|
2018-07-28 06:19:30 -05:00
|
|
|
|
(None, 'qux/index'),
|
|
|
|
|
('hyperref', 'https://sphinx-doc.org/?q=sphinx')])
|
2016-10-12 05:32:48 -05:00
|
|
|
|
assert_node(toctree[0][1][1],
|
|
|
|
|
[list_item, ([compact_paragraph, reference, "reversed order"],
|
|
|
|
|
[bullet_list, addnodes.toctree])]) # [0][1][1][1][0]
|
|
|
|
|
assert_node(toctree[0][1][1][1][0], addnodes.toctree, caption=None,
|
|
|
|
|
glob=True, hidden=False, titlesonly=False,
|
2020-02-04 11:03:30 -06:00
|
|
|
|
maxdepth=-1, numbered=0, includefiles=list(reversed(includefiles)),
|
2016-10-12 05:32:48 -05:00
|
|
|
|
entries=[(None, 'qux/index'), (None, 'baz'), (None, 'bar/bar_3'),
|
|
|
|
|
(None, 'bar/bar_2'), (None, 'bar/bar_1'), (None, 'bar/index'),
|
|
|
|
|
(None, 'foo')])
|
2016-09-18 03:14:55 -05:00
|
|
|
|
|
|
|
|
|
# other collections
|
2016-10-12 05:32:48 -05:00
|
|
|
|
assert app.env.toc_num_entries['index'] == 3
|
2020-02-04 11:03:30 -06:00
|
|
|
|
assert app.env.toctree_includes['index'] == includefiles + list(reversed(includefiles))
|
2016-09-18 03:14:55 -05:00
|
|
|
|
for file in includefiles:
|
|
|
|
|
assert 'index' in app.env.files_to_rebuild[file]
|
|
|
|
|
assert 'index' in app.env.glob_toctrees
|
|
|
|
|
assert app.env.numbered_toctrees == set()
|
|
|
|
|
|
|
|
|
|
|
2017-01-06 09:46:26 -06:00
|
|
|
|
@pytest.mark.sphinx('xml', testroot='toctree')
|
|
|
|
|
@pytest.mark.test_params(shared_result='test_environment_toctree_basic')
|
|
|
|
|
def test_get_toc_for(app):
|
|
|
|
|
app.build()
|
2017-07-31 08:30:37 -05:00
|
|
|
|
toctree = TocTree(app.env).get_toc_for('index', app.builder)
|
2016-09-18 03:14:55 -05:00
|
|
|
|
|
|
|
|
|
assert_node(toctree,
|
|
|
|
|
[bullet_list, ([list_item, (compact_paragraph, # [0][0]
|
|
|
|
|
[bullet_list, (addnodes.toctree, # [0][1][0]
|
|
|
|
|
comment, # [0][1][1]
|
|
|
|
|
list_item)])], # [0][1][2]
|
|
|
|
|
[list_item, (compact_paragraph, # [1][0]
|
|
|
|
|
[bullet_list, (addnodes.toctree,
|
|
|
|
|
addnodes.toctree)])],
|
|
|
|
|
[list_item, compact_paragraph])]) # [2][0]
|
|
|
|
|
assert_node(toctree[0][0],
|
2018-12-15 08:02:28 -06:00
|
|
|
|
[compact_paragraph, reference, "Welcome to Sphinx Tests’s documentation!"])
|
2016-09-18 03:14:55 -05:00
|
|
|
|
assert_node(toctree[0][1][2],
|
|
|
|
|
([compact_paragraph, reference, "subsection"],
|
|
|
|
|
[bullet_list, list_item, compact_paragraph, reference, "subsubsection"]))
|
|
|
|
|
assert_node(toctree[1][0],
|
|
|
|
|
[compact_paragraph, reference, "Test for issue #1157"])
|
|
|
|
|
assert_node(toctree[2][0],
|
|
|
|
|
[compact_paragraph, reference, "Indices and tables"])
|
|
|
|
|
|
|
|
|
|
|
2017-01-06 09:46:26 -06:00
|
|
|
|
@pytest.mark.sphinx('xml', testroot='toctree')
|
|
|
|
|
@pytest.mark.test_params(shared_result='test_environment_toctree_basic')
|
|
|
|
|
def test_get_toc_for_only(app):
|
|
|
|
|
app.build()
|
2016-09-18 03:14:55 -05:00
|
|
|
|
builder = StandaloneHTMLBuilder(app)
|
2017-07-31 08:30:37 -05:00
|
|
|
|
toctree = TocTree(app.env).get_toc_for('index', builder)
|
2016-09-18 03:14:55 -05:00
|
|
|
|
|
|
|
|
|
assert_node(toctree,
|
|
|
|
|
[bullet_list, ([list_item, (compact_paragraph, # [0][0]
|
|
|
|
|
[bullet_list, (addnodes.toctree, # [0][1][0]
|
|
|
|
|
list_item, # [0][1][1]
|
|
|
|
|
list_item)])], # [0][1][2]
|
|
|
|
|
[list_item, (compact_paragraph, # [1][0]
|
|
|
|
|
[bullet_list, (addnodes.toctree,
|
|
|
|
|
addnodes.toctree)])],
|
|
|
|
|
[list_item, compact_paragraph])]) # [2][0]
|
|
|
|
|
assert_node(toctree[0][0],
|
2018-12-15 08:02:28 -06:00
|
|
|
|
[compact_paragraph, reference, "Welcome to Sphinx Tests’s documentation!"])
|
2016-09-18 03:14:55 -05:00
|
|
|
|
assert_node(toctree[0][1][1],
|
|
|
|
|
([compact_paragraph, reference, "Section for HTML"],
|
|
|
|
|
[bullet_list, addnodes.toctree]))
|
|
|
|
|
assert_node(toctree[0][1][2],
|
|
|
|
|
([compact_paragraph, reference, "subsection"],
|
|
|
|
|
[bullet_list, list_item, compact_paragraph, reference, "subsubsection"]))
|
|
|
|
|
assert_node(toctree[1][0],
|
|
|
|
|
[compact_paragraph, reference, "Test for issue #1157"])
|
|
|
|
|
assert_node(toctree[2][0],
|
|
|
|
|
[compact_paragraph, reference, "Indices and tables"])
|
|
|
|
|
|
|
|
|
|
|
2017-01-06 09:46:26 -06:00
|
|
|
|
@pytest.mark.sphinx('xml', testroot='toctree')
|
|
|
|
|
@pytest.mark.test_params(shared_result='test_environment_toctree_basic')
|
|
|
|
|
def test_get_toc_for_tocdepth(app):
|
|
|
|
|
app.build()
|
2017-07-31 08:30:37 -05:00
|
|
|
|
toctree = TocTree(app.env).get_toc_for('tocdepth', app.builder)
|
2016-09-18 03:14:55 -05:00
|
|
|
|
|
|
|
|
|
assert_node(toctree,
|
|
|
|
|
[bullet_list, list_item, (compact_paragraph, # [0][0]
|
|
|
|
|
bullet_list)]) # [0][1]
|
|
|
|
|
assert_node(toctree[0][0],
|
|
|
|
|
[compact_paragraph, reference, "level 1"])
|
|
|
|
|
assert_node(toctree[0][1],
|
|
|
|
|
[bullet_list, list_item, compact_paragraph, reference, "level 2"])
|
|
|
|
|
|
|
|
|
|
|
2017-01-06 09:46:26 -06:00
|
|
|
|
@pytest.mark.sphinx('xml', testroot='toctree')
|
|
|
|
|
@pytest.mark.test_params(shared_result='test_environment_toctree_basic')
|
|
|
|
|
def test_get_toctree_for(app):
|
|
|
|
|
app.build()
|
2017-07-31 08:30:37 -05:00
|
|
|
|
toctree = TocTree(app.env).get_toctree_for('index', app.builder, collapse=False)
|
2016-09-18 03:14:55 -05:00
|
|
|
|
assert_node(toctree,
|
2021-04-03 10:09:54 -05:00
|
|
|
|
[compact_paragraph, ([title, "Table of Contents"],
|
2016-09-18 03:14:55 -05:00
|
|
|
|
bullet_list,
|
|
|
|
|
bullet_list,
|
|
|
|
|
bullet_list)])
|
|
|
|
|
|
|
|
|
|
assert_node(toctree[1],
|
|
|
|
|
([list_item, ([compact_paragraph, reference, "foo"],
|
|
|
|
|
bullet_list)],
|
|
|
|
|
[list_item, compact_paragraph, reference, "bar"],
|
2019-02-03 06:34:58 -06:00
|
|
|
|
[list_item, compact_paragraph, reference, "http://sphinx-doc.org/"],
|
|
|
|
|
[list_item, compact_paragraph, reference,
|
|
|
|
|
"Welcome to Sphinx Tests’s documentation!"]))
|
2016-09-18 03:14:55 -05:00
|
|
|
|
assert_node(toctree[1][0][1],
|
|
|
|
|
([list_item, compact_paragraph, reference, "quux"],
|
|
|
|
|
[list_item, compact_paragraph, reference, "foo.1"],
|
|
|
|
|
[list_item, compact_paragraph, reference, "foo.2"]))
|
|
|
|
|
|
2018-05-21 07:31:34 -05:00
|
|
|
|
assert_node(toctree[1][0][0][0], reference, refuri="foo", secnumber=[1])
|
|
|
|
|
assert_node(toctree[1][0][1][0][0][0], reference, refuri="quux", secnumber=[1, 1])
|
|
|
|
|
assert_node(toctree[1][0][1][1][0][0], reference, refuri="foo#foo-1", secnumber=[1, 2])
|
|
|
|
|
assert_node(toctree[1][0][1][2][0][0], reference, refuri="foo#foo-2", secnumber=[1, 3])
|
|
|
|
|
assert_node(toctree[1][1][0][0], reference, refuri="bar", secnumber=[2])
|
2016-09-18 03:14:55 -05:00
|
|
|
|
assert_node(toctree[1][2][0][0], reference, refuri="http://sphinx-doc.org/")
|
2019-02-03 06:34:58 -06:00
|
|
|
|
assert_node(toctree[1][3][0][0], reference, refuri="")
|
2016-09-18 03:14:55 -05:00
|
|
|
|
|
|
|
|
|
assert_node(toctree[2],
|
|
|
|
|
[bullet_list, list_item, compact_paragraph, reference, "baz"])
|
|
|
|
|
assert_node(toctree[3],
|
|
|
|
|
([list_item, compact_paragraph, reference, "Latest reference"],
|
|
|
|
|
[list_item, compact_paragraph, reference, "Python"]))
|
|
|
|
|
assert_node(toctree[3][0][0][0], reference, refuri="http://sphinx-doc.org/latest/")
|
|
|
|
|
assert_node(toctree[3][1][0][0], reference, refuri="http://python.org/")
|
|
|
|
|
|
|
|
|
|
|
2017-01-06 09:46:26 -06:00
|
|
|
|
@pytest.mark.sphinx('xml', testroot='toctree')
|
|
|
|
|
@pytest.mark.test_params(shared_result='test_environment_toctree_basic')
|
|
|
|
|
def test_get_toctree_for_collapse(app):
|
|
|
|
|
app.build()
|
2017-07-31 08:30:37 -05:00
|
|
|
|
toctree = TocTree(app.env).get_toctree_for('index', app.builder, collapse=True)
|
2016-09-18 03:14:55 -05:00
|
|
|
|
assert_node(toctree,
|
2021-04-03 10:09:54 -05:00
|
|
|
|
[compact_paragraph, ([title, "Table of Contents"],
|
2016-09-18 03:14:55 -05:00
|
|
|
|
bullet_list,
|
|
|
|
|
bullet_list,
|
|
|
|
|
bullet_list)])
|
|
|
|
|
|
|
|
|
|
assert_node(toctree[1],
|
|
|
|
|
([list_item, compact_paragraph, reference, "foo"],
|
|
|
|
|
[list_item, compact_paragraph, reference, "bar"],
|
2019-02-03 06:34:58 -06:00
|
|
|
|
[list_item, compact_paragraph, reference, "http://sphinx-doc.org/"],
|
|
|
|
|
[list_item, compact_paragraph, reference,
|
|
|
|
|
"Welcome to Sphinx Tests’s documentation!"]))
|
2018-05-21 07:31:34 -05:00
|
|
|
|
assert_node(toctree[1][0][0][0], reference, refuri="foo", secnumber=[1])
|
|
|
|
|
assert_node(toctree[1][1][0][0], reference, refuri="bar", secnumber=[2])
|
2016-09-18 03:14:55 -05:00
|
|
|
|
assert_node(toctree[1][2][0][0], reference, refuri="http://sphinx-doc.org/")
|
2019-02-03 06:34:58 -06:00
|
|
|
|
assert_node(toctree[1][3][0][0], reference, refuri="")
|
2016-09-18 03:14:55 -05:00
|
|
|
|
|
|
|
|
|
assert_node(toctree[2],
|
|
|
|
|
[bullet_list, list_item, compact_paragraph, reference, "baz"])
|
|
|
|
|
assert_node(toctree[3],
|
|
|
|
|
([list_item, compact_paragraph, reference, "Latest reference"],
|
|
|
|
|
[list_item, compact_paragraph, reference, "Python"]))
|
|
|
|
|
assert_node(toctree[3][0][0][0], reference, refuri="http://sphinx-doc.org/latest/")
|
|
|
|
|
assert_node(toctree[3][1][0][0], reference, refuri="http://python.org/")
|
|
|
|
|
|
|
|
|
|
|
2017-01-06 09:46:26 -06:00
|
|
|
|
@pytest.mark.sphinx('xml', testroot='toctree')
|
|
|
|
|
@pytest.mark.test_params(shared_result='test_environment_toctree_basic')
|
|
|
|
|
def test_get_toctree_for_maxdepth(app):
|
|
|
|
|
app.build()
|
2017-08-19 10:27:07 -05:00
|
|
|
|
toctree = TocTree(app.env).get_toctree_for('index', app.builder,
|
|
|
|
|
collapse=False, maxdepth=3)
|
2016-09-18 03:14:55 -05:00
|
|
|
|
assert_node(toctree,
|
2021-04-03 10:09:54 -05:00
|
|
|
|
[compact_paragraph, ([title, "Table of Contents"],
|
2016-09-18 03:14:55 -05:00
|
|
|
|
bullet_list,
|
|
|
|
|
bullet_list,
|
|
|
|
|
bullet_list)])
|
|
|
|
|
|
|
|
|
|
assert_node(toctree[1],
|
|
|
|
|
([list_item, ([compact_paragraph, reference, "foo"],
|
|
|
|
|
bullet_list)],
|
|
|
|
|
[list_item, compact_paragraph, reference, "bar"],
|
2019-02-03 06:34:58 -06:00
|
|
|
|
[list_item, compact_paragraph, reference, "http://sphinx-doc.org/"],
|
|
|
|
|
[list_item, compact_paragraph, reference,
|
|
|
|
|
"Welcome to Sphinx Tests’s documentation!"]))
|
2016-09-18 03:14:55 -05:00
|
|
|
|
assert_node(toctree[1][0][1],
|
|
|
|
|
([list_item, compact_paragraph, reference, "quux"],
|
|
|
|
|
[list_item, ([compact_paragraph, reference, "foo.1"],
|
|
|
|
|
bullet_list)],
|
|
|
|
|
[list_item, compact_paragraph, reference, "foo.2"]))
|
|
|
|
|
assert_node(toctree[1][0][1][1][1],
|
|
|
|
|
[bullet_list, list_item, compact_paragraph, reference, "foo.1-1"])
|
|
|
|
|
|
2018-05-21 07:31:34 -05:00
|
|
|
|
assert_node(toctree[1][0][0][0], reference, refuri="foo", secnumber=[1])
|
|
|
|
|
assert_node(toctree[1][0][1][0][0][0], reference, refuri="quux", secnumber=[1, 1])
|
|
|
|
|
assert_node(toctree[1][0][1][1][0][0], reference, refuri="foo#foo-1", secnumber=[1, 2])
|
2016-09-18 03:14:55 -05:00
|
|
|
|
assert_node(toctree[1][0][1][1][1][0][0][0],
|
2018-05-21 07:31:34 -05:00
|
|
|
|
reference, refuri="foo#foo-1-1", secnumber=[1, 2, 1])
|
|
|
|
|
assert_node(toctree[1][0][1][2][0][0], reference, refuri="foo#foo-2", secnumber=[1, 3])
|
|
|
|
|
assert_node(toctree[1][1][0][0], reference, refuri="bar", secnumber=[2])
|
2016-09-18 03:14:55 -05:00
|
|
|
|
assert_node(toctree[1][2][0][0], reference, refuri="http://sphinx-doc.org/")
|
2019-02-03 06:34:58 -06:00
|
|
|
|
assert_node(toctree[1][3][0][0], reference, refuri="")
|
2016-09-18 03:14:55 -05:00
|
|
|
|
|
|
|
|
|
assert_node(toctree[2],
|
|
|
|
|
[bullet_list, list_item, compact_paragraph, reference, "baz"])
|
|
|
|
|
assert_node(toctree[3],
|
|
|
|
|
([list_item, compact_paragraph, reference, "Latest reference"],
|
|
|
|
|
[list_item, compact_paragraph, reference, "Python"]))
|
|
|
|
|
assert_node(toctree[3][0][0][0], reference, refuri="http://sphinx-doc.org/latest/")
|
|
|
|
|
assert_node(toctree[3][1][0][0], reference, refuri="http://python.org/")
|
|
|
|
|
|
|
|
|
|
|
2017-01-06 09:46:26 -06:00
|
|
|
|
@pytest.mark.sphinx('xml', testroot='toctree')
|
|
|
|
|
@pytest.mark.test_params(shared_result='test_environment_toctree_basic')
|
|
|
|
|
def test_get_toctree_for_includehidden(app):
|
|
|
|
|
app.build()
|
2017-07-31 08:30:37 -05:00
|
|
|
|
toctree = TocTree(app.env).get_toctree_for('index', app.builder, collapse=False,
|
|
|
|
|
includehidden=False)
|
2016-09-18 03:14:55 -05:00
|
|
|
|
assert_node(toctree,
|
2021-04-03 10:09:54 -05:00
|
|
|
|
[compact_paragraph, ([title, "Table of Contents"],
|
2016-09-18 03:14:55 -05:00
|
|
|
|
bullet_list,
|
|
|
|
|
bullet_list)])
|
|
|
|
|
|
|
|
|
|
assert_node(toctree[1],
|
|
|
|
|
([list_item, ([compact_paragraph, reference, "foo"],
|
|
|
|
|
bullet_list)],
|
|
|
|
|
[list_item, compact_paragraph, reference, "bar"],
|
2019-02-03 06:34:58 -06:00
|
|
|
|
[list_item, compact_paragraph, reference, "http://sphinx-doc.org/"],
|
|
|
|
|
[list_item, compact_paragraph, reference,
|
|
|
|
|
"Welcome to Sphinx Tests’s documentation!"]))
|
2016-09-18 03:14:55 -05:00
|
|
|
|
assert_node(toctree[1][0][1],
|
|
|
|
|
([list_item, compact_paragraph, reference, "quux"],
|
|
|
|
|
[list_item, compact_paragraph, reference, "foo.1"],
|
|
|
|
|
[list_item, compact_paragraph, reference, "foo.2"]))
|
|
|
|
|
|
2018-05-21 07:31:34 -05:00
|
|
|
|
assert_node(toctree[1][0][0][0], reference, refuri="foo", secnumber=[1])
|
|
|
|
|
assert_node(toctree[1][0][1][0][0][0], reference, refuri="quux", secnumber=[1, 1])
|
|
|
|
|
assert_node(toctree[1][0][1][1][0][0], reference, refuri="foo#foo-1", secnumber=[1, 2])
|
|
|
|
|
assert_node(toctree[1][0][1][2][0][0], reference, refuri="foo#foo-2", secnumber=[1, 3])
|
|
|
|
|
assert_node(toctree[1][1][0][0], reference, refuri="bar", secnumber=[2])
|
2016-09-18 03:14:55 -05:00
|
|
|
|
assert_node(toctree[1][2][0][0], reference, refuri="http://sphinx-doc.org/")
|
|
|
|
|
|
|
|
|
|
assert_node(toctree[2],
|
|
|
|
|
[bullet_list, list_item, compact_paragraph, reference, "baz"])
|