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.
369 lines
6.8 KiB
369 lines
6.8 KiB
#! /usr/bin/env python |
|
|
|
# $Id: test_literal_blocks.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 states.py. |
|
""" |
|
|
|
from __init__ import DocutilsTestSupport |
|
|
|
def suite(): |
|
s = DocutilsTestSupport.ParserTestSuite() |
|
s.generateTests(totest) |
|
return s |
|
|
|
totest = {} |
|
|
|
totest['indented_literal_blocks'] = [ |
|
["""\ |
|
A paragraph:: |
|
|
|
A literal block. |
|
""", |
|
"""\ |
|
<document source="test data"> |
|
<paragraph> |
|
A paragraph: |
|
<literal_block xml:space="preserve"> |
|
A literal block. |
|
"""], |
|
["""\ |
|
A paragraph with a space after the colons:: \n\ |
|
|
|
A literal block. |
|
""", |
|
"""\ |
|
<document source="test data"> |
|
<paragraph> |
|
A paragraph with a space after the colons: |
|
<literal_block xml:space="preserve"> |
|
A literal block. |
|
"""], |
|
["""\ |
|
A paragraph:: |
|
|
|
A literal block. |
|
|
|
Another paragraph:: |
|
|
|
Another literal block. |
|
With two blank lines following. |
|
|
|
|
|
A final paragraph. |
|
""", |
|
"""\ |
|
<document source="test data"> |
|
<paragraph> |
|
A paragraph: |
|
<literal_block xml:space="preserve"> |
|
A literal block. |
|
<paragraph> |
|
Another paragraph: |
|
<literal_block xml:space="preserve"> |
|
Another literal block. |
|
With two blank lines following. |
|
<paragraph> |
|
A final paragraph. |
|
"""], |
|
["""\ |
|
A paragraph |
|
on more than |
|
one line:: |
|
|
|
A literal block. |
|
""", |
|
"""\ |
|
<document source="test data"> |
|
<paragraph> |
|
A paragraph |
|
on more than |
|
one line: |
|
<literal_block xml:space="preserve"> |
|
A literal block. |
|
"""], |
|
["""\ |
|
A paragraph |
|
on more than |
|
one line:: |
|
A literal block |
|
with no blank line above. |
|
""", |
|
"""\ |
|
<document source="test data"> |
|
<paragraph> |
|
A paragraph |
|
on more than |
|
one line: |
|
<system_message level="3" line="4" source="test data" type="ERROR"> |
|
<paragraph> |
|
Unexpected indentation. |
|
<literal_block xml:space="preserve"> |
|
A literal block |
|
with no blank line above. |
|
"""], |
|
["""\ |
|
A paragraph:: |
|
|
|
A literal block. |
|
no blank line |
|
""", |
|
"""\ |
|
<document source="test data"> |
|
<paragraph> |
|
A paragraph: |
|
<literal_block xml:space="preserve"> |
|
A literal block. |
|
<system_message level="2" line="4" source="test data" type="WARNING"> |
|
<paragraph> |
|
Literal block ends without a blank line; unexpected unindent. |
|
<paragraph> |
|
no blank line |
|
"""], |
|
[r""" |
|
A paragraph\\:: |
|
|
|
A literal block. |
|
|
|
A paragraph\:: |
|
|
|
Not a literal block. |
|
""", |
|
r"""<document source="test data"> |
|
<paragraph> |
|
A paragraph\: |
|
<literal_block xml:space="preserve"> |
|
A literal block. |
|
<paragraph> |
|
A paragraph:: |
|
<block_quote> |
|
<paragraph> |
|
Not a literal block. |
|
"""], |
|
[r""" |
|
\\:: |
|
|
|
A literal block. |
|
|
|
\:: |
|
|
|
Not a literal block. |
|
""", |
|
r"""<document source="test data"> |
|
<paragraph> |
|
\: |
|
<literal_block xml:space="preserve"> |
|
A literal block. |
|
<paragraph> |
|
:: |
|
<block_quote> |
|
<paragraph> |
|
Not a literal block. |
|
"""], |
|
["""\ |
|
A paragraph: :: |
|
|
|
A literal block. |
|
""", |
|
"""\ |
|
<document source="test data"> |
|
<paragraph> |
|
A paragraph: |
|
<literal_block xml:space="preserve"> |
|
A literal block. |
|
"""], |
|
["""\ |
|
A paragraph: |
|
|
|
:: |
|
|
|
A literal block. |
|
""", |
|
"""\ |
|
<document source="test data"> |
|
<paragraph> |
|
A paragraph: |
|
<literal_block xml:space="preserve"> |
|
A literal block. |
|
"""], |
|
["""\ |
|
A paragraph: |
|
:: |
|
|
|
A literal block. |
|
""", |
|
"""\ |
|
<document source="test data"> |
|
<system_message level="1" line="2" source="test data" type="INFO"> |
|
<paragraph> |
|
Possible title underline, too short for the title. |
|
Treating it as ordinary text because it's so short. |
|
<paragraph> |
|
A paragraph: |
|
<literal_block xml:space="preserve"> |
|
A literal block. |
|
"""], |
|
["""\ |
|
A paragraph: |
|
|
|
:: |
|
|
|
A literal block. |
|
""", |
|
"""\ |
|
<document source="test data"> |
|
<paragraph> |
|
A paragraph: |
|
<literal_block xml:space="preserve"> |
|
A literal block. |
|
"""], |
|
["""\ |
|
A paragraph:: |
|
|
|
Not a literal block. |
|
""", |
|
"""\ |
|
<document source="test data"> |
|
<paragraph> |
|
A paragraph: |
|
<system_message level="2" line="3" source="test data" type="WARNING"> |
|
<paragraph> |
|
Literal block expected; none found. |
|
<paragraph> |
|
Not a literal block. |
|
"""], |
|
["""\ |
|
A paragraph:: |
|
|
|
A wonky literal block. |
|
Literal line 2. |
|
|
|
Literal line 3. |
|
""", |
|
"""\ |
|
<document source="test data"> |
|
<paragraph> |
|
A paragraph: |
|
<literal_block xml:space="preserve"> |
|
A wonky literal block. |
|
Literal line 2. |
|
\n\ |
|
Literal line 3. |
|
"""], |
|
["""\ |
|
EOF, even though a literal block is indicated:: |
|
""", |
|
"""\ |
|
<document source="test data"> |
|
<paragraph> |
|
EOF, even though a literal block is indicated: |
|
<system_message level="2" line="2" source="test data" type="WARNING"> |
|
<paragraph> |
|
Literal block expected; none found. |
|
"""], |
|
] |
|
|
|
totest['quoted_literal_blocks'] = [ |
|
["""\ |
|
A paragraph:: |
|
|
|
> A literal block. |
|
""", |
|
"""\ |
|
<document source="test data"> |
|
<paragraph> |
|
A paragraph: |
|
<literal_block xml:space="preserve"> |
|
> A literal block. |
|
"""], |
|
["""\ |
|
A paragraph:: |
|
|
|
|
|
> A literal block. |
|
""", |
|
"""\ |
|
<document source="test data"> |
|
<paragraph> |
|
A paragraph: |
|
<literal_block xml:space="preserve"> |
|
> A literal block. |
|
"""], |
|
["""\ |
|
A paragraph:: |
|
|
|
> A literal block. |
|
> Line 2. |
|
""", |
|
"""\ |
|
<document source="test data"> |
|
<paragraph> |
|
A paragraph: |
|
<literal_block xml:space="preserve"> |
|
> A literal block. |
|
> Line 2. |
|
"""], |
|
["""\ |
|
A paragraph:: |
|
|
|
> A literal block. |
|
Indented line. |
|
""", |
|
"""\ |
|
<document source="test data"> |
|
<paragraph> |
|
A paragraph: |
|
<literal_block xml:space="preserve"> |
|
> A literal block. |
|
<system_message level="3" line="4" source="test data" type="ERROR"> |
|
<paragraph> |
|
Unexpected indentation. |
|
<block_quote> |
|
<paragraph> |
|
Indented line. |
|
"""], |
|
["""\ |
|
A paragraph:: |
|
|
|
> A literal block. |
|
Text. |
|
""", |
|
"""\ |
|
<document source="test data"> |
|
<paragraph> |
|
A paragraph: |
|
<literal_block xml:space="preserve"> |
|
> A literal block. |
|
<system_message level="3" line="4" source="test data" type="ERROR"> |
|
<paragraph> |
|
Inconsistent literal block quoting. |
|
<paragraph> |
|
Text. |
|
"""], |
|
["""\ |
|
A paragraph:: |
|
|
|
> A literal block. |
|
$ Inconsistent line. |
|
""", |
|
"""\ |
|
<document source="test data"> |
|
<paragraph> |
|
A paragraph: |
|
<literal_block xml:space="preserve"> |
|
> A literal block. |
|
<system_message level="3" line="4" source="test data" type="ERROR"> |
|
<paragraph> |
|
Inconsistent literal block quoting. |
|
<paragraph> |
|
$ Inconsistent line. |
|
"""], |
|
] |
|
|
|
|
|
if __name__ == '__main__': |
|
import unittest |
|
unittest.main(defaultTest='suite')
|
|
|