You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
433 lines
10 KiB
433 lines
10 KiB
7 years ago
|
#! /usr/bin/env python
|
||
|
|
||
|
# $Id: test_contents.py 4564 2006-05-21 20:44:42Z wiemann $
|
||
|
# Author: David Goodger <goodger@python.org>
|
||
|
# Copyright: This module has been placed in the public domain.
|
||
|
|
||
|
"""
|
||
|
Tests for `docutils.transforms.parts.Contents` (via
|
||
|
`docutils.transforms.universal.LastReaderPending`).
|
||
|
"""
|
||
|
|
||
|
from __init__ import DocutilsTestSupport
|
||
|
from docutils.transforms.references import Substitutions
|
||
|
from docutils.parsers.rst import Parser
|
||
|
|
||
|
|
||
|
def suite():
|
||
|
parser = Parser()
|
||
|
s = DocutilsTestSupport.TransformTestSuite(parser)
|
||
|
s.generateTests(totest)
|
||
|
return s
|
||
|
|
||
|
totest = {}
|
||
|
|
||
|
totest['tables_of_contents'] = ((Substitutions,), [
|
||
|
["""\
|
||
|
.. contents::
|
||
|
|
||
|
Title 1
|
||
|
=======
|
||
|
Paragraph 1.
|
||
|
|
||
|
Title_ 2
|
||
|
--------
|
||
|
Paragraph 2.
|
||
|
|
||
|
_`Title` 3
|
||
|
``````````
|
||
|
Paragraph 3.
|
||
|
|
||
|
Title 4
|
||
|
-------
|
||
|
Paragraph 4.
|
||
|
""",
|
||
|
"""\
|
||
|
<document source="test data">
|
||
|
<topic classes="contents" ids="contents" names="contents">
|
||
|
<title>
|
||
|
Contents
|
||
|
<bullet_list>
|
||
|
<list_item>
|
||
|
<paragraph>
|
||
|
<reference ids="id1" refid="title-1">
|
||
|
Title 1
|
||
|
<bullet_list>
|
||
|
<list_item>
|
||
|
<paragraph>
|
||
|
<reference ids="id2" refid="title-2">
|
||
|
Title
|
||
|
2
|
||
|
<bullet_list>
|
||
|
<list_item>
|
||
|
<paragraph>
|
||
|
<reference ids="id3" refid="title-3">
|
||
|
Title
|
||
|
3
|
||
|
<list_item>
|
||
|
<paragraph>
|
||
|
<reference ids="id4" refid="title-4">
|
||
|
Title 4
|
||
|
<section ids="title-1" names="title\ 1">
|
||
|
<title refid="id1">
|
||
|
Title 1
|
||
|
<paragraph>
|
||
|
Paragraph 1.
|
||
|
<section ids="title-2" names="title\ 2">
|
||
|
<title>
|
||
|
<reference name="Title" refname="title">
|
||
|
Title
|
||
|
2
|
||
|
<paragraph>
|
||
|
Paragraph 2.
|
||
|
<section ids="title-3" names="title\ 3">
|
||
|
<title refid="id3">
|
||
|
<target ids="title" names="title">
|
||
|
Title
|
||
|
3
|
||
|
<paragraph>
|
||
|
Paragraph 3.
|
||
|
<section ids="title-4" names="title\ 4">
|
||
|
<title refid="id4">
|
||
|
Title 4
|
||
|
<paragraph>
|
||
|
Paragraph 4.
|
||
|
"""],
|
||
|
["""\
|
||
|
.. contents:: Table of Contents
|
||
|
|
||
|
Title 1
|
||
|
=======
|
||
|
Paragraph 1.
|
||
|
|
||
|
Title 2
|
||
|
-------
|
||
|
Paragraph 2.
|
||
|
""",
|
||
|
"""\
|
||
|
<document source="test data">
|
||
|
<topic classes="contents" ids="table-of-contents" names="table\ of\ contents">
|
||
|
<title>
|
||
|
Table of Contents
|
||
|
<bullet_list>
|
||
|
<list_item>
|
||
|
<paragraph>
|
||
|
<reference ids="id1" refid="title-1">
|
||
|
Title 1
|
||
|
<bullet_list>
|
||
|
<list_item>
|
||
|
<paragraph>
|
||
|
<reference ids="id2" refid="title-2">
|
||
|
Title 2
|
||
|
<section ids="title-1" names="title\ 1">
|
||
|
<title refid="id1">
|
||
|
Title 1
|
||
|
<paragraph>
|
||
|
Paragraph 1.
|
||
|
<section ids="title-2" names="title\ 2">
|
||
|
<title refid="id2">
|
||
|
Title 2
|
||
|
<paragraph>
|
||
|
Paragraph 2.
|
||
|
"""],
|
||
|
["""\
|
||
|
.. contents:: There's an image in Title 2
|
||
|
|
||
|
Title 1
|
||
|
=======
|
||
|
Paragraph 1.
|
||
|
|
||
|
|Title 2|
|
||
|
=========
|
||
|
Paragraph 2.
|
||
|
|
||
|
.. |Title 2| image:: title2.png
|
||
|
""",
|
||
|
"""\
|
||
|
<document source="test data">
|
||
|
<topic classes="contents" ids="there-s-an-image-in-title-2" names="there's\ an\ image\ in\ title\ 2">
|
||
|
<title>
|
||
|
There's an image in Title 2
|
||
|
<bullet_list>
|
||
|
<list_item>
|
||
|
<paragraph>
|
||
|
<reference ids="id1" refid="title-1">
|
||
|
Title 1
|
||
|
<list_item>
|
||
|
<paragraph>
|
||
|
<reference ids="id2" refid="title-2">
|
||
|
Title 2
|
||
|
<section ids="title-1" names="title\ 1">
|
||
|
<title refid="id1">
|
||
|
Title 1
|
||
|
<paragraph>
|
||
|
Paragraph 1.
|
||
|
<section ids="title-2" names="title\ 2">
|
||
|
<title refid="id2">
|
||
|
<image alt="Title 2" uri="title2.png">
|
||
|
<paragraph>
|
||
|
Paragraph 2.
|
||
|
<substitution_definition names="Title\ 2">
|
||
|
<image alt="Title 2" uri="title2.png">
|
||
|
"""], # emacs cruft: "
|
||
|
["""\
|
||
|
.. contents::
|
||
|
:depth: 2
|
||
|
|
||
|
Title 1
|
||
|
=======
|
||
|
Paragraph 1.
|
||
|
|
||
|
Title 2
|
||
|
-------
|
||
|
Paragraph 2.
|
||
|
|
||
|
Title 3
|
||
|
```````
|
||
|
Paragraph 3.
|
||
|
|
||
|
Title 4
|
||
|
-------
|
||
|
Paragraph 4.
|
||
|
""",
|
||
|
"""\
|
||
|
<document source="test data">
|
||
|
<topic classes="contents" ids="contents" names="contents">
|
||
|
<title>
|
||
|
Contents
|
||
|
<bullet_list>
|
||
|
<list_item>
|
||
|
<paragraph>
|
||
|
<reference ids="id1" refid="title-1">
|
||
|
Title 1
|
||
|
<bullet_list>
|
||
|
<list_item>
|
||
|
<paragraph>
|
||
|
<reference ids="id2" refid="title-2">
|
||
|
Title 2
|
||
|
<list_item>
|
||
|
<paragraph>
|
||
|
<reference ids="id3" refid="title-4">
|
||
|
Title 4
|
||
|
<section ids="title-1" names="title\ 1">
|
||
|
<title refid="id1">
|
||
|
Title 1
|
||
|
<paragraph>
|
||
|
Paragraph 1.
|
||
|
<section ids="title-2" names="title\ 2">
|
||
|
<title refid="id2">
|
||
|
Title 2
|
||
|
<paragraph>
|
||
|
Paragraph 2.
|
||
|
<section ids="title-3" names="title\ 3">
|
||
|
<title>
|
||
|
Title 3
|
||
|
<paragraph>
|
||
|
Paragraph 3.
|
||
|
<section ids="title-4" names="title\ 4">
|
||
|
<title refid="id3">
|
||
|
Title 4
|
||
|
<paragraph>
|
||
|
Paragraph 4.
|
||
|
"""],
|
||
|
["""\
|
||
|
Title 1
|
||
|
=======
|
||
|
|
||
|
.. contents::
|
||
|
:local:
|
||
|
|
||
|
Paragraph 1.
|
||
|
|
||
|
Title 2
|
||
|
-------
|
||
|
Paragraph 2.
|
||
|
|
||
|
Title 3
|
||
|
```````
|
||
|
Paragraph 3.
|
||
|
|
||
|
Title 4
|
||
|
-------
|
||
|
Paragraph 4.
|
||
|
""",
|
||
|
"""\
|
||
|
<document source="test data">
|
||
|
<section ids="title-1" names="title\ 1">
|
||
|
<title>
|
||
|
Title 1
|
||
|
<topic classes="contents local" ids="contents" names="contents">
|
||
|
<bullet_list>
|
||
|
<list_item>
|
||
|
<paragraph>
|
||
|
<reference ids="id1" refid="title-2">
|
||
|
Title 2
|
||
|
<bullet_list>
|
||
|
<list_item>
|
||
|
<paragraph>
|
||
|
<reference ids="id2" refid="title-3">
|
||
|
Title 3
|
||
|
<list_item>
|
||
|
<paragraph>
|
||
|
<reference ids="id3" refid="title-4">
|
||
|
Title 4
|
||
|
<paragraph>
|
||
|
Paragraph 1.
|
||
|
<section ids="title-2" names="title\ 2">
|
||
|
<title refid="id1">
|
||
|
Title 2
|
||
|
<paragraph>
|
||
|
Paragraph 2.
|
||
|
<section ids="title-3" names="title\ 3">
|
||
|
<title refid="id2">
|
||
|
Title 3
|
||
|
<paragraph>
|
||
|
Paragraph 3.
|
||
|
<section ids="title-4" names="title\ 4">
|
||
|
<title refid="id3">
|
||
|
Title 4
|
||
|
<paragraph>
|
||
|
Paragraph 4.
|
||
|
"""],
|
||
|
["""\
|
||
|
.. contents::
|
||
|
:local:
|
||
|
|
||
|
Test duplicate name "Contents".
|
||
|
|
||
|
Section
|
||
|
--------
|
||
|
Paragraph.
|
||
|
""",
|
||
|
"""\
|
||
|
<document source="test data">
|
||
|
<topic classes="contents local" ids="contents" names="contents">
|
||
|
<bullet_list>
|
||
|
<list_item>
|
||
|
<paragraph>
|
||
|
<reference ids="id1" refid="section">
|
||
|
Section
|
||
|
<paragraph>
|
||
|
Test duplicate name "Contents".
|
||
|
<section ids="section" names="section">
|
||
|
<title refid="id1">
|
||
|
Section
|
||
|
<paragraph>
|
||
|
Paragraph.
|
||
|
"""],
|
||
|
["""\
|
||
|
.. contents::
|
||
|
:backlinks: top
|
||
|
|
||
|
Section
|
||
|
--------
|
||
|
Paragraph.
|
||
|
""",
|
||
|
"""\
|
||
|
<document source="test data">
|
||
|
<topic classes="contents" ids="contents" names="contents">
|
||
|
<title>
|
||
|
Contents
|
||
|
<bullet_list>
|
||
|
<list_item>
|
||
|
<paragraph>
|
||
|
<reference ids="id1" refid="section">
|
||
|
Section
|
||
|
<section ids="section" names="section">
|
||
|
<title refid="contents">
|
||
|
Section
|
||
|
<paragraph>
|
||
|
Paragraph.
|
||
|
"""],
|
||
|
["""\
|
||
|
.. contents::
|
||
|
:backlinks: none
|
||
|
|
||
|
Section
|
||
|
--------
|
||
|
Paragraph.
|
||
|
""",
|
||
|
"""\
|
||
|
<document source="test data">
|
||
|
<topic classes="contents" ids="contents" names="contents">
|
||
|
<title>
|
||
|
Contents
|
||
|
<bullet_list>
|
||
|
<list_item>
|
||
|
<paragraph>
|
||
|
<reference ids="id1" refid="section">
|
||
|
Section
|
||
|
<section ids="section" names="section">
|
||
|
<title>
|
||
|
Section
|
||
|
<paragraph>
|
||
|
Paragraph.
|
||
|
"""],
|
||
|
["""\
|
||
|
.. contents::
|
||
|
|
||
|
Degenerate case, no table of contents generated.
|
||
|
""",
|
||
|
"""\
|
||
|
<document source="test data">
|
||
|
<paragraph>
|
||
|
Degenerate case, no table of contents generated.
|
||
|
"""],
|
||
|
["""\
|
||
|
Title 1
|
||
|
=======
|
||
|
|
||
|
Paragraph 1.
|
||
|
|
||
|
.. sidebar:: Contents
|
||
|
|
||
|
.. contents::
|
||
|
:local:
|
||
|
|
||
|
Title 2
|
||
|
-------
|
||
|
Paragraph 2.
|
||
|
|
||
|
Title 3
|
||
|
```````
|
||
|
Paragraph 3.
|
||
|
""",
|
||
|
"""\
|
||
|
<document source="test data">
|
||
|
<section ids="title-1" names="title\ 1">
|
||
|
<title>
|
||
|
Title 1
|
||
|
<paragraph>
|
||
|
Paragraph 1.
|
||
|
<sidebar>
|
||
|
<title>
|
||
|
Contents
|
||
|
<topic classes="contents local" ids="contents" names="contents">
|
||
|
<bullet_list>
|
||
|
<list_item>
|
||
|
<paragraph>
|
||
|
<reference ids="id1" refid="title-2">
|
||
|
Title 2
|
||
|
<bullet_list>
|
||
|
<list_item>
|
||
|
<paragraph>
|
||
|
<reference ids="id2" refid="title-3">
|
||
|
Title 3
|
||
|
<section ids="title-2" names="title\ 2">
|
||
|
<title refid="id1">
|
||
|
Title 2
|
||
|
<paragraph>
|
||
|
Paragraph 2.
|
||
|
<section ids="title-3" names="title\ 3">
|
||
|
<title refid="id2">
|
||
|
Title 3
|
||
|
<paragraph>
|
||
|
Paragraph 3.
|
||
|
"""],
|
||
|
])
|
||
|
|
||
|
|
||
|
if __name__ == '__main__':
|
||
|
import unittest
|
||
|
unittest.main(defaultTest='suite')
|