def assert_refnode(node, class_name, target, reftype=None, domain='js'): attributes = { 'refdomain': domain, 'reftarget': target, } if reftype is not None: attributes['reftype'] = reftype if class_name is not False: attributes['js:class'] = class_name assert_node(node, **attributes)
def assert_refnode(node, mod_name, prefix, target, reftype=None, domain='js'): attributes = { 'refdomain': domain, 'reftarget': target, } if reftype is not None: attributes['reftype'] = reftype if mod_name is not False: attributes['js:module'] = mod_name if prefix is not False: attributes['js:object'] = prefix assert_node(node, **attributes)
def test_compact_refonly_bullet_list(app, status, warning): app.builder.build_all() doctree = pickle.loads((app.doctreedir / 'index.doctree').bytes()) assert_node(doctree[0], nodes.section) assert len(doctree[0]) == 5 assert doctree[0][1].astext() == 'List A:' assert_node(doctree[0][2], nodes.bullet_list) assert_node(doctree[0][2][0][0], addnodes.compact_paragraph) assert doctree[0][2][0][0].astext() == 'genindex' assert doctree[0][3].astext() == 'List B:' assert_node(doctree[0][4], nodes.bullet_list) assert_node(doctree[0][4][0][0], nodes.paragraph) assert doctree[0][4][0][0].astext() == 'Hello'
def test_get_toc_for(app): app.build() toctree = app.env.get_toc_for('index', app.builder) 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], [ compact_paragraph, reference, "Welcome to Sphinx Tests's documentation!" ]) 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"])
def _test_get_toc_for(app): toctree = app.env.get_toc_for('index', app.builder) 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], [compact_paragraph, reference, "Welcome to Sphinx Tests's documentation!"]) 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"])
def test_glob(app, status, warning): 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] [bullet_list, addnodes.toctree])]) # [0][1][0] assert_node(toctree[0][0], [compact_paragraph, reference, "test-toctree-glob"]) assert_node(toctree[0][1][0], addnodes.toctree, caption=None, 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'), (None, 'qux/index')]) # other collections assert app.env.toc_num_entries['index'] == 1 assert app.env.toctree_includes['index'] == includefiles 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()
def _test_get_toc_for_tocdepth(app): toctree = app.env.get_toc_for('tocdepth', app.builder) 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"])
def test_glob(app, status, warning): 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] [bullet_list, addnodes.toctree]) ]) # [0][1][0] assert_node(toctree[0][0], [compact_paragraph, reference, "test-toctree-glob"]) assert_node(toctree[0][1][0], addnodes.toctree, caption=None, 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'), (None, 'qux/index')]) # other collections assert app.env.toc_num_entries['index'] == 1 assert app.env.toctree_includes['index'] == includefiles 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()
def test_keep_warnings_is_False(app, status, warning): app.builder.build_all() doctree = pickle.loads((app.doctreedir / 'index.doctree').bytes()) assert_node(doctree[0], nodes.section) assert len(doctree[0]) == 1
def _test_get_toctree_for_includehidden(app): toctree = app.env.get_toctree_for('index', app.builder, collapse=False, includehidden=False) assert_node(toctree, [compact_paragraph, ([caption, "Table of Contents"], bullet_list, bullet_list)]) assert_node(toctree[1], ([list_item, ([compact_paragraph, reference, "foo"], bullet_list)], [list_item, compact_paragraph, reference, "bar"], [list_item, compact_paragraph, reference, "http://sphinx-doc.org/"])) 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"])) 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,)) 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"])
def test_image_glob_intl_using_figure_language_filename(app, status, warning): app.builder.build_all() # index.rst doctree = pickle.loads((app.doctreedir / 'index.doctree').bytes()) assert_node(doctree[0][1], nodes.image, uri='rimg.png.xx', candidates={'*': 'rimg.png.xx'}) assert isinstance(doctree[0][2], nodes.figure) assert_node(doctree[0][2][0], nodes.image, uri='rimg.png.xx', candidates={'*': 'rimg.png.xx'}) assert_node(doctree[0][3], nodes.image, uri='img.*', candidates={ 'application/pdf': 'img.pdf', 'image/gif': 'img.gif', 'image/png': 'img.png' }) assert isinstance(doctree[0][4], nodes.figure) assert_node(doctree[0][4][0], nodes.image, uri='img.*', candidates={ 'application/pdf': 'img.pdf', 'image/gif': 'img.gif', 'image/png': 'img.png' }) # subdir/index.rst doctree = pickle.loads((app.doctreedir / 'subdir/index.doctree').bytes()) assert_node(doctree[0][1], nodes.image, uri='subdir/rimg.png', candidates={'*': 'subdir/rimg.png'}) assert_node(doctree[0][2], nodes.image, uri='subdir/svgimg.*', candidates={ 'application/pdf': 'subdir/svgimg.pdf', 'image/svg+xml': 'subdir/svgimg.svg' }) assert isinstance(doctree[0][3], nodes.figure) assert_node(doctree[0][3][0], nodes.image, uri='subdir/svgimg.*', candidates={ 'application/pdf': 'subdir/svgimg.pdf', 'image/svg+xml': 'subdir/svgimg.svg' })
def test_rst_prolog(app, status, warning): app.builder.build_all() rst = pickle.loads((app.doctreedir / 'restructuredtext.doctree').bytes()) md = pickle.loads((app.doctreedir / 'markdown.doctree').bytes()) # rst_prolog assert_node(rst[0], nodes.paragraph) assert_node(rst[0][0], nodes.emphasis) assert_node(rst[0][0][0], nodes.Text) assert rst[0][0][0] == 'Hello world' # rst_epilog assert_node(rst[-1], nodes.section) assert_node(rst[-1][-1], nodes.paragraph) assert_node(rst[-1][-1][0], nodes.emphasis) assert_node(rst[-1][-1][0][0], nodes.Text) assert rst[-1][-1][0][0] == 'Good-bye world' # rst_prolog & rst_epilog on exlucding reST parser assert not md.rawsource.startswith('*Hello world*.') assert not md.rawsource.endswith('*Good-bye world*.\n')
def test_image_glob_intl(app): app.build() # index.rst doctree = pickle.loads((app.doctreedir / 'index.doctree').bytes()) assert_node(doctree[0][1], nodes.image, uri='rimg.xx.png', candidates={'*': 'rimg.xx.png'}) assert isinstance(doctree[0][2], nodes.figure) assert_node(doctree[0][2][0], nodes.image, uri='rimg.xx.png', candidates={'*': 'rimg.xx.png'}) assert_node(doctree[0][3], nodes.image, uri='img.*', candidates={ 'application/pdf': 'img.pdf', 'image/gif': 'img.gif', 'image/png': 'img.png' }) assert isinstance(doctree[0][4], nodes.figure) assert_node(doctree[0][4][0], nodes.image, uri='img.*', candidates={ 'application/pdf': 'img.pdf', 'image/gif': 'img.gif', 'image/png': 'img.png' }) # subdir/index.rst doctree = pickle.loads((app.doctreedir / 'subdir/index.doctree').bytes()) assert_node(doctree[0][1], nodes.image, uri='subdir/rimg.xx.png', candidates={'*': 'subdir/rimg.xx.png'}) assert_node(doctree[0][2], nodes.image, uri='subdir/svgimg.*', candidates={ 'application/pdf': 'subdir/svgimg.pdf', 'image/svg+xml': 'subdir/svgimg.xx.svg' }) assert isinstance(doctree[0][3], nodes.figure) assert_node(doctree[0][3][0], nodes.image, uri='subdir/svgimg.*', candidates={ 'application/pdf': 'subdir/svgimg.pdf', 'image/svg+xml': 'subdir/svgimg.xx.svg' })
def test_image_glob_intl_using_figure_language_filename(app, status, warning): app.builder.build_all() # index.rst doctree = pickle.loads((app.doctreedir / 'index.doctree').bytes()) assert_node(doctree[0][1], nodes.image, uri='rimg.png.xx', candidates={'*': 'rimg.png.xx'}) assert isinstance(doctree[0][2], nodes.figure) assert_node(doctree[0][2][0], nodes.image, uri='rimg.png.xx', candidates={'*': 'rimg.png.xx'}) assert_node(doctree[0][3], nodes.image, uri='img.*', candidates={'application/pdf': 'img.pdf', 'image/gif': 'img.gif', 'image/png': 'img.png'}) assert isinstance(doctree[0][4], nodes.figure) assert_node(doctree[0][4][0], nodes.image, uri='img.*', candidates={'application/pdf': 'img.pdf', 'image/gif': 'img.gif', 'image/png': 'img.png'}) # subdir/index.rst doctree = pickle.loads((app.doctreedir / 'subdir/index.doctree').bytes()) assert_node(doctree[0][1], nodes.image, uri='subdir/rimg.png', candidates={'*': 'subdir/rimg.png'}) assert_node(doctree[0][2], nodes.image, uri='subdir/svgimg.*', candidates={'application/pdf': 'subdir/svgimg.pdf', 'image/svg+xml': 'subdir/svgimg.svg'}) assert isinstance(doctree[0][3], nodes.figure) assert_node(doctree[0][3][0], nodes.image, uri='subdir/svgimg.*', candidates={'application/pdf': 'subdir/svgimg.pdf', 'image/svg+xml': 'subdir/svgimg.svg'})
def test_get_toctree_for_includehidden(app): app.build() toctree = app.env.get_toctree_for('index', app.builder, collapse=False, includehidden=False) assert_node(toctree, [ compact_paragraph, ([caption, "Table of Contents"], bullet_list, bullet_list) ]) assert_node( toctree[1], ([list_item, ([compact_paragraph, reference, "foo"], bullet_list) ], [list_item, compact_paragraph, reference, "bar"], [list_item, compact_paragraph, reference, "http://sphinx-doc.org/"])) 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"])) 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, )) 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"])
def test_image_glob_intl(app): app.build() # index.rst doctree = pickle.loads((app.doctreedir / 'index.doctree').bytes()) assert_node(doctree[0][1], nodes.image, uri='rimg.xx.png', candidates={'*': 'rimg.xx.png'}) assert isinstance(doctree[0][2], nodes.figure) assert_node(doctree[0][2][0], nodes.image, uri='rimg.xx.png', candidates={'*': 'rimg.xx.png'}) assert_node(doctree[0][3], nodes.image, uri='img.*', candidates={'application/pdf': 'img.pdf', 'image/gif': 'img.gif', 'image/png': 'img.png'}) assert isinstance(doctree[0][4], nodes.figure) assert_node(doctree[0][4][0], nodes.image, uri='img.*', candidates={'application/pdf': 'img.pdf', 'image/gif': 'img.gif', 'image/png': 'img.png'}) # subdir/index.rst doctree = pickle.loads((app.doctreedir / 'subdir/index.doctree').bytes()) assert_node(doctree[0][1], nodes.image, uri='subdir/rimg.xx.png', candidates={'*': 'subdir/rimg.xx.png'}) assert_node(doctree[0][2], nodes.image, uri='subdir/svgimg.*', candidates={'application/pdf': 'subdir/svgimg.pdf', 'image/svg+xml': 'subdir/svgimg.xx.svg'}) assert isinstance(doctree[0][3], nodes.figure) assert_node(doctree[0][3][0], nodes.image, uri='subdir/svgimg.*', candidates={'application/pdf': 'subdir/svgimg.pdf', 'image/svg+xml': 'subdir/svgimg.xx.svg'})
def test_process_doc(app): 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], [ compact_paragraph, reference, "Welcome to Sphinx Tests's documentation!" ]) 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, entries=[(None, 'foo'), (None, 'bar'), (None, 'http://sphinx-doc.org/')], 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'] assert app.env.files_to_rebuild['foo'] == set(['index']) assert app.env.files_to_rebuild['bar'] == set(['index']) assert app.env.files_to_rebuild['baz'] == set(['index']) assert app.env.glob_toctrees == set() assert app.env.numbered_toctrees == set(['index']) # 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
def test_get_toctree_for_collapse(app): app.build() toctree = app.env.get_toctree_for('index', app.builder, collapse=True) assert_node(toctree, [ compact_paragraph, ([caption, "Table of Contents"], bullet_list, bullet_list, bullet_list) ]) assert_node( toctree[1], ([list_item, compact_paragraph, reference, "foo" ], [list_item, compact_paragraph, reference, "bar"], [list_item, compact_paragraph, reference, "http://sphinx-doc.org/"])) assert_node(toctree[1][0][0][0], reference, refuri="foo", secnumber=(1, )) assert_node(toctree[1][1][0][0], reference, refuri="bar", secnumber=(2, )) 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"]) 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/")
def _test_get_toctree_for_maxdepth(app): toctree = app.env.get_toctree_for('index', app.builder, collapse=False, maxdepth=3) assert_node(toctree, [ compact_paragraph, ([caption, "Table of Contents"], bullet_list, bullet_list, bullet_list) ]) assert_node( toctree[1], ([list_item, ([compact_paragraph, reference, "foo"], bullet_list) ], [list_item, compact_paragraph, reference, "bar"], [list_item, compact_paragraph, reference, "http://sphinx-doc.org/"])) 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"]) 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][1][1][0][0][0], 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, )) 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"]) 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/")
def _test_process_doc(app): # 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], [compact_paragraph, reference, "Welcome to Sphinx Tests's documentation!"]) 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, entries=[(None, 'foo'), (None, 'bar'), (None, 'http://sphinx-doc.org/')], 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'] assert app.env.files_to_rebuild['foo'] == set(['index']) assert app.env.files_to_rebuild['bar'] == set(['index']) assert app.env.files_to_rebuild['baz'] == set(['index']) assert app.env.glob_toctrees == set() assert app.env.numbered_toctrees == set(['index']) # 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
def _test_get_toctree_for_collapse(app): toctree = app.env.get_toctree_for('index', app.builder, collapse=True) assert_node(toctree, [compact_paragraph, ([caption, "Table of Contents"], bullet_list, bullet_list, bullet_list)]) assert_node(toctree[1], ([list_item, compact_paragraph, reference, "foo"], [list_item, compact_paragraph, reference, "bar"], [list_item, compact_paragraph, reference, "http://sphinx-doc.org/"])) assert_node(toctree[1][0][0][0], reference, refuri="foo", secnumber=(1,)) assert_node(toctree[1][1][0][0], reference, refuri="bar", secnumber=(2,)) 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"]) 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/")