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.
289 lines
5.9 KiB
289 lines
5.9 KiB
#! /usr/bin/env python |
|
|
|
# $Id: test_rfc2822.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 RFC-2822 headers in PEPs (readers/pep.py). |
|
""" |
|
|
|
from __init__ import DocutilsTestSupport |
|
|
|
def suite(): |
|
s = DocutilsTestSupport.PEPParserTestSuite() |
|
s.generateTests(totest) |
|
return s |
|
|
|
totest = {} |
|
|
|
totest['rfc2822'] = [ |
|
["""\ |
|
Author: Me |
|
Version: 1 |
|
Date: 2002-04-23 |
|
""", |
|
"""\ |
|
<document source="test data"> |
|
<field_list classes="rfc2822"> |
|
<field> |
|
<field_name> |
|
Author |
|
<field_body> |
|
<paragraph> |
|
Me |
|
<field> |
|
<field_name> |
|
Version |
|
<field_body> |
|
<paragraph> |
|
1 |
|
<field> |
|
<field_name> |
|
Date |
|
<field_body> |
|
<paragraph> |
|
2002-04-23 |
|
"""], |
|
["""\ |
|
|
|
|
|
Author: Me |
|
Version: 1 |
|
Date: 2002-04-23 |
|
|
|
.. Leading blank lines don't affect RFC-2822 header parsing. |
|
""", |
|
"""\ |
|
<document source="test data"> |
|
<field_list classes="rfc2822"> |
|
<field> |
|
<field_name> |
|
Author |
|
<field_body> |
|
<paragraph> |
|
Me |
|
<field> |
|
<field_name> |
|
Version |
|
<field_body> |
|
<paragraph> |
|
1 |
|
<field> |
|
<field_name> |
|
Date |
|
<field_body> |
|
<paragraph> |
|
2002-04-23 |
|
<comment xml:space="preserve"> |
|
Leading blank lines don't affect RFC-2822 header parsing. |
|
"""], |
|
["""\ |
|
.. A comment should prevent RFC-2822 header parsing. |
|
|
|
Author: Me |
|
Version: 1 |
|
Date: 2002-04-23 |
|
""", |
|
"""\ |
|
<document source="test data"> |
|
<comment xml:space="preserve"> |
|
A comment should prevent RFC-2822 header parsing. |
|
<paragraph> |
|
Author: Me |
|
Version: 1 |
|
Date: 2002-04-23 |
|
"""], |
|
["""\ |
|
Author: Me |
|
|
|
Version: 1 |
|
Date: 2002-04-23 |
|
""", |
|
"""\ |
|
<document source="test data"> |
|
<field_list classes="rfc2822"> |
|
<field> |
|
<field_name> |
|
Author |
|
<field_body> |
|
<paragraph> |
|
Me |
|
<paragraph> |
|
Version: 1 |
|
Date: 2002-04-23 |
|
"""], |
|
["""\ |
|
field: |
|
empty item above, no blank line |
|
""", |
|
"""\ |
|
<document source="test data"> |
|
<field_list classes="rfc2822"> |
|
<field> |
|
<field_name> |
|
field |
|
<field_body> |
|
<system_message level="2" line="2" source="test data" type="WARNING"> |
|
<paragraph> |
|
RFC2822-style field list ends without a blank line; unexpected unindent. |
|
<paragraph> |
|
empty item above, no blank line |
|
"""], |
|
["""\ |
|
Author: |
|
Me |
|
Version: |
|
1 |
|
Date: |
|
2002-04-23 |
|
""", |
|
"""\ |
|
<document source="test data"> |
|
<field_list classes="rfc2822"> |
|
<field> |
|
<field_name> |
|
Author |
|
<field_body> |
|
<paragraph> |
|
Me |
|
<field> |
|
<field_name> |
|
Version |
|
<field_body> |
|
<paragraph> |
|
1 |
|
<field> |
|
<field_name> |
|
Date |
|
<field_body> |
|
<paragraph> |
|
2002-04-23 |
|
"""], |
|
["""\ |
|
Authors: Me, |
|
Myself, |
|
and I |
|
Version: 1 |
|
or so |
|
Date: 2002-04-23 |
|
(Tuesday) |
|
""", |
|
"""\ |
|
<document source="test data"> |
|
<field_list classes="rfc2822"> |
|
<field> |
|
<field_name> |
|
Authors |
|
<field_body> |
|
<paragraph> |
|
Me, |
|
Myself, |
|
and I |
|
<field> |
|
<field_name> |
|
Version |
|
<field_body> |
|
<paragraph> |
|
1 |
|
or so |
|
<field> |
|
<field_name> |
|
Date |
|
<field_body> |
|
<paragraph> |
|
2002-04-23 |
|
(Tuesday) |
|
"""], |
|
["""\ |
|
Authors: Me, |
|
Myself, |
|
and I |
|
Version: 1 |
|
or so |
|
Date: 2002-04-23 |
|
(Tuesday) |
|
""", |
|
"""\ |
|
<document source="test data"> |
|
<field_list classes="rfc2822"> |
|
<field> |
|
<field_name> |
|
Authors |
|
<field_body> |
|
<paragraph> |
|
Me, |
|
Myself, |
|
and I |
|
<field> |
|
<field_name> |
|
Version |
|
<field_body> |
|
<paragraph> |
|
1 |
|
or so |
|
<field> |
|
<field_name> |
|
Date |
|
<field_body> |
|
<paragraph> |
|
2002-04-23 |
|
(Tuesday) |
|
"""], |
|
["""\ |
|
Authors: - Me |
|
- Myself |
|
- I |
|
Version: |
|
""", |
|
"""\ |
|
<document source="test data"> |
|
<field_list classes="rfc2822"> |
|
<field> |
|
<field_name> |
|
Authors |
|
<field_body> |
|
<bullet_list bullet="-"> |
|
<list_item> |
|
<paragraph> |
|
Me |
|
<list_item> |
|
<paragraph> |
|
Myself |
|
<list_item> |
|
<paragraph> |
|
I |
|
<field> |
|
<field_name> |
|
Version |
|
<field_body> |
|
"""], |
|
["""\ |
|
Authors: Me |
|
|
|
Myself and I |
|
Version: |
|
""", |
|
"""\ |
|
<document source="test data"> |
|
<field_list classes="rfc2822"> |
|
<field> |
|
<field_name> |
|
Authors |
|
<field_body> |
|
<paragraph> |
|
Me |
|
<block_quote> |
|
<paragraph> |
|
Myself and I |
|
<system_message level="2" line="4" source="test data" type="WARNING"> |
|
<paragraph> |
|
Block quote ends without a blank line; unexpected unindent. |
|
<paragraph> |
|
Version: |
|
"""], |
|
] |
|
|
|
if __name__ == '__main__': |
|
import unittest |
|
unittest.main(defaultTest='suite')
|
|
|