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.
290 lines
5.9 KiB
290 lines
5.9 KiB
7 years ago
|
#! /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')
|