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.
182 lines
4.1 KiB
182 lines
4.1 KiB
#! /usr/bin/env python |
|
|
|
# $Id: test_citations.py 5510 2008-02-15 09:23:07Z grubert $ |
|
# 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['citations'] = [ |
|
["""\ |
|
.. [citation] This is a citation. |
|
""", |
|
"""\ |
|
<document source="test data"> |
|
<citation ids="citation" names="citation"> |
|
<label> |
|
citation |
|
<paragraph> |
|
This is a citation. |
|
"""], |
|
["""\ |
|
.. [citation1234] This is a citation with year. |
|
""", |
|
"""\ |
|
<document source="test data"> |
|
<citation ids="citation1234" names="citation1234"> |
|
<label> |
|
citation1234 |
|
<paragraph> |
|
This is a citation with year. |
|
"""], |
|
["""\ |
|
.. [citation] This is a citation |
|
on multiple lines. |
|
""", |
|
"""\ |
|
<document source="test data"> |
|
<citation ids="citation" names="citation"> |
|
<label> |
|
citation |
|
<paragraph> |
|
This is a citation |
|
on multiple lines. |
|
"""], |
|
["""\ |
|
.. [citation1] This is a citation |
|
on multiple lines with more space. |
|
|
|
.. [citation2] This is a citation |
|
on multiple lines with less space. |
|
""", |
|
"""\ |
|
<document source="test data"> |
|
<citation ids="citation1" names="citation1"> |
|
<label> |
|
citation1 |
|
<paragraph> |
|
This is a citation |
|
on multiple lines with more space. |
|
<citation ids="citation2" names="citation2"> |
|
<label> |
|
citation2 |
|
<paragraph> |
|
This is a citation |
|
on multiple lines with less space. |
|
"""], |
|
["""\ |
|
.. [citation] |
|
This is a citation on multiple lines |
|
whose block starts on line 2. |
|
""", |
|
"""\ |
|
<document source="test data"> |
|
<citation ids="citation" names="citation"> |
|
<label> |
|
citation |
|
<paragraph> |
|
This is a citation on multiple lines |
|
whose block starts on line 2. |
|
"""], |
|
["""\ |
|
.. [citation] |
|
|
|
That was an empty citation. |
|
""", |
|
"""\ |
|
<document source="test data"> |
|
<citation ids="citation" names="citation"> |
|
<label> |
|
citation |
|
<paragraph> |
|
That was an empty citation. |
|
"""], |
|
["""\ |
|
.. [citation] |
|
No blank line. |
|
""", |
|
"""\ |
|
<document source="test data"> |
|
<citation ids="citation" names="citation"> |
|
<label> |
|
citation |
|
<system_message level="2" line="2" source="test data" type="WARNING"> |
|
<paragraph> |
|
Explicit markup ends without a blank line; unexpected unindent. |
|
<paragraph> |
|
No blank line. |
|
"""], |
|
["""\ |
|
.. [citation label with spaces] this isn't a citation |
|
|
|
.. [*citationlabelwithmarkup*] this isn't a citation |
|
""", |
|
"""\ |
|
<document source="test data"> |
|
<comment xml:space="preserve"> |
|
[citation label with spaces] this isn't a citation |
|
<comment xml:space="preserve"> |
|
[*citationlabelwithmarkup*] this isn't a citation |
|
"""], |
|
[""" |
|
isolated internals : ``.-_``. |
|
|
|
.. [citation.withdot] one dot |
|
|
|
.. [citation-withdot] one hyphen |
|
|
|
.. [citation_withunderscore] one underscore |
|
|
|
.. [citation:with:colons] two colons |
|
|
|
.. [citation+withplus] one plus |
|
""", |
|
"""<document source="test data"> |
|
<paragraph> |
|
isolated internals : \n\ |
|
<literal> |
|
.-_ |
|
. |
|
<citation ids="citation-withdot" names="citation.withdot"> |
|
<label> |
|
citation.withdot |
|
<paragraph> |
|
one dot |
|
<citation ids="id1" names="citation-withdot"> |
|
<label> |
|
citation-withdot |
|
<paragraph> |
|
one hyphen |
|
<citation ids="citation-withunderscore" names="citation_withunderscore"> |
|
<label> |
|
citation_withunderscore |
|
<paragraph> |
|
one underscore |
|
<citation ids="citation-with-colons" names="citation:with:colons"> |
|
<label> |
|
citation:with:colons |
|
<paragraph> |
|
two colons |
|
<citation ids="citation-withplus" names="citation+withplus"> |
|
<label> |
|
citation+withplus |
|
<paragraph> |
|
one plus |
|
"""], |
|
] |
|
|
|
|
|
if __name__ == '__main__': |
|
import unittest |
|
unittest.main(defaultTest='suite')
|
|
|