4 # Author: David Goodger <goodger@python.org>
5 # Copyright: This module has been placed in the public domain.
11 from __init__
import DocutilsTestSupport
14 s
= DocutilsTestSupport
.ParserTestSuite()
15 s
.generateTests(totest
)
20 totest
['field_lists'] = [
33 <document source="test data">
63 One-liners, no blank lines:
71 <document source="test data">
73 One-liners, no blank lines:
102 empty item above, no blank line
105 <document source="test data">
111 <system_message level="2" line="2" source="test data" type="WARNING">
113 Field list ends without a blank line; unexpected unindent.
115 empty item above, no blank line
118 Field bodies starting on the next line:
130 <document source="test data">
132 Field bodies starting on the next line:
160 One-paragraph, multi-liners:
169 :Parameter i: counter
173 <document source="test data">
175 One-paragraph, multi-liners:
208 One-paragraph, multi-liners, not lined up:
217 :Parameter i: counter
221 <document source="test data">
223 One-paragraph, multi-liners, not lined up:
256 Multiple body elements:
263 This is a field list item's body,
264 containing multiple elements.
266 Here's a literal block::
271 Even nested field lists are possible:
278 <document source="test data">
280 Multiple body elements:
286 <bullet_list bullet="-">
301 This is a field list item's body,
302 containing multiple elements.
304 Here's a literal block:
305 <literal_block xml:space="preserve">
309 Even nested field lists are possible:
331 Nested field lists on one line:
333 :field1: :field2: :field3: body
334 :field4: :field5: :field6: body
341 <document source="test data">
343 Nested field lists on one line:
398 :Parameter i j k: multiple arguments
401 <document source="test data">
411 :Field *name* `with` **inline** ``markup``: inline markup in
412 field name is parsed.
415 <document source="test data">
434 field name is parsed.
437 :Field name with *bad inline markup: should generate warning.
440 <document source="test data">
445 <problematic ids="id2" refid="id1">
449 <system_message backrefs="id2" ids="id1" level="2" line="1" source="test data" type="WARNING">
451 Inline emphasis start-string without end-string.
453 should generate warning.
455 [r
"""Some edge cases:
459 No blank line before this paragraph.
461 : Field: marker must not begin with whitespace.
463 :Field : marker must not end with whitespace.
465 Field: marker is missing its open-colon.
467 :Field marker is missing its close-colon.
469 :Field\: names\: with\: colons\:: are possible.
471 :\\Field\ names with backslashes\\: are possible, too.
475 :Not a\\\: field list.
477 :Not a \: field list either.
479 :\: Not a field list either.
482 A definition list, not a field list.
485 <document source="test data">
499 <system_message level="2" line="5" source="test data" type="WARNING">
501 Field list ends without a blank line; unexpected unindent.
503 No blank line before this paragraph.
505 : Field: marker must not begin with whitespace.
507 :Field : marker must not end with whitespace.
509 Field: marker is missing its open-colon.
511 :Field marker is missing its close-colon.
515 Field: names: with: colons:
521 \\Field names with backslashes\\
532 :Not a\\: field list.
534 :Not a : field list either.
536 :: Not a field list either.
538 <definition_list_item>
543 A definition list, not a field list.
547 if __name__
== '__main__':
549 unittest
.main(defaultTest
='suite')