4 # Author: David Goodger <goodger@python.org>
5 # Copyright: This module has been placed in the public domain.
8 Tests for `docutils.transforms.misc.ClassAttribute`.
11 from __init__
import DocutilsTestSupport
12 from docutils
.parsers
.rst
import Parser
17 s
= DocutilsTestSupport
.TransformTestSuite(parser
)
18 s
.generateTests(totest
)
23 totest
['class'] = ((), [
30 <document source="test data">
31 <paragraph classes="one">
41 <document source="test data">
42 <comment xml:space="preserve">
43 <block_quote classes="two">
55 <document source="test data">
59 <paragraph classes="three">
71 <document source="test data">
72 <section classes="four" ids="section-title" names="section\ title">
86 <document source="test data">
87 <paragraph classes="multiple">
89 <paragraph classes="multiple">
95 .. Just a comment. It's silly, but possible
98 <document source="test data">
99 <comment classes="multiple" xml:space="preserve">
100 Just a comment. It's silly, but possible
108 <document source="test data">
109 <system_message level="3" line="1" source="test data" type="ERROR">
111 Error in "class" directive:
112 1 argument(s) required, 0 supplied.
113 <literal_block xml:space="preserve">
115 <system_message level="3" line="3" source="test data" type="ERROR">
117 Invalid class attribute value for "class" directive: "99".
118 <literal_block xml:space="preserve">
125 multiple class values may be assigned to one element
128 <document source="test data">
129 <paragraph classes="one two">
130 multiple class values may be assigned to one element
135 multiple class values may be assigned to one element
138 <document source="test data">
139 <paragraph classes="one two">
140 multiple class values may be assigned to one element
146 3. Class should apply to list, not to system message.
149 <document source="test data">
150 <enumerated_list classes="fancy" enumtype="arabic" prefix="" start="2" suffix=".">
156 Class should apply to list, not to system message.
157 <system_message level="1" line="3" source="test data" type="INFO">
159 Enumerated list start value not ordinal-1: "2" (ordinal 2)
163 3. Class should apply to next paragraph, not to system message.
170 <document source="test data">
171 <enumerated_list enumtype="arabic" prefix="" start="2" suffix=".">
177 Class should apply to next paragraph, not to system message.
178 <system_message level="1" line="1" source="test data" type="INFO">
180 Enumerated list start value not ordinal-1: "2" (ordinal 2)
181 <paragraph classes="fancy">
187 if __name__
== '__main__':
189 unittest
.main(defaultTest
='suite')