summaryrefslogtreecommitdiff
path: root/test/test_parsers/test_rst/test_directives/test_test_directives.py
diff options
context:
space:
mode:
Diffstat (limited to 'test/test_parsers/test_rst/test_directives/test_test_directives.py')
-rwxr-xr-xtest/test_parsers/test_rst/test_directives/test_test_directives.py208
1 files changed, 208 insertions, 0 deletions
diff --git a/test/test_parsers/test_rst/test_directives/test_test_directives.py b/test/test_parsers/test_rst/test_directives/test_test_directives.py
new file mode 100755
index 000000000..b90b26473
--- /dev/null
+++ b/test/test_parsers/test_rst/test_directives/test_test_directives.py
@@ -0,0 +1,208 @@
+#! /usr/bin/env python
+
+# Author: David Goodger
+# Contact: goodger@users.sourceforge.net
+# Revision: $Revision$
+# Date: $Date$
+# Copyright: This module has been placed in the public domain.
+
+"""
+Tests for misc.py test directives.
+"""
+
+from __init__ import DocutilsTestSupport
+
+def suite():
+ s = DocutilsTestSupport.ParserTestSuite()
+ s.generateTests(totest)
+ return s
+
+totest = {}
+
+totest['test_directives'] = [
+["""\
+.. reStructuredText-test-directive::
+
+Paragraph.
+""",
+"""\
+<document source="test data">
+ <system_message level="1" line="1" source="test data" type="INFO">
+ <paragraph>
+ Directive processed. Type="reStructuredText-test-directive", arguments=[], options={}, content: None
+ <paragraph>
+ Paragraph.
+"""],
+["""\
+.. reStructuredText-test-directive ::
+
+An optional space before the "::".
+""",
+"""\
+<document source="test data">
+ <system_message level="1" line="1" source="test data" type="INFO">
+ <paragraph>
+ Directive processed. Type="reStructuredText-test-directive", arguments=[], options={}, content: None
+ <paragraph>
+ An optional space before the "::".
+"""],
+["""\
+.. reStructuredText-test-directive:: argument
+
+Paragraph.
+""",
+"""\
+<document source="test data">
+ <system_message level="1" line="1" source="test data" type="INFO">
+ <paragraph>
+ Directive processed. Type="reStructuredText-test-directive", arguments=['argument'], options={}, content: None
+ <paragraph>
+ Paragraph.
+"""],
+["""\
+.. reStructuredText-test-directive:: argument
+ :option: value
+
+Paragraph.
+""",
+"""\
+<document source="test data">
+ <system_message level="1" line="1" source="test data" type="INFO">
+ <paragraph>
+ Directive processed. Type="reStructuredText-test-directive", arguments=['argument'], options={'option': 'value'}, content: None
+ <paragraph>
+ Paragraph.
+"""],
+["""\
+.. reStructuredText-test-directive:: :option: value
+
+Paragraph.
+""",
+"""\
+<document source="test data">
+ <system_message level="1" line="1" source="test data" type="INFO">
+ <paragraph>
+ Directive processed. Type="reStructuredText-test-directive", arguments=[], options={'option': 'value'}, content: None
+ <paragraph>
+ Paragraph.
+"""],
+["""\
+.. reStructuredText-test-directive:: :option:
+
+Paragraph.
+""",
+"""\
+<document source="test data">
+ <system_message level="3" line="1" source="test data" type="ERROR">
+ <paragraph>
+ Error in "reStructuredText-test-directive" directive:
+ invalid option value: (option: "option"; value: None)
+ argument required but none supplied.
+ <literal_block xml:space="preserve">
+ .. reStructuredText-test-directive:: :option:
+ <paragraph>
+ Paragraph.
+"""],
+["""\
+.. reStructuredText-test-directive::
+
+ Directive block contains one paragraph, with a blank line before.
+
+Paragraph.
+""",
+"""\
+<document source="test data">
+ <system_message level="1" line="1" source="test data" type="INFO">
+ <paragraph>
+ Directive processed. Type="reStructuredText-test-directive", arguments=[], options={}, content:
+ <literal_block xml:space="preserve">
+ Directive block contains one paragraph, with a blank line before.
+ <paragraph>
+ Paragraph.
+"""],
+["""\
+.. reStructuredText-test-directive::
+
+
+ Directive block contains one paragraph, with two blank lines before.
+
+Paragraph.
+""",
+"""\
+<document source="test data">
+ <system_message level="1" line="1" source="test data" type="INFO">
+ <paragraph>
+ Directive processed. Type="reStructuredText-test-directive", arguments=[], options={}, content:
+ <literal_block xml:space="preserve">
+ Directive block contains one paragraph, with two blank lines before.
+ <paragraph>
+ Paragraph.
+"""],
+["""\
+.. reStructuredText-test-directive::
+ Directive block contains one paragraph, no blank line before.
+
+Paragraph.
+""",
+"""\
+<document source="test data">
+ <system_message level="1" line="1" source="test data" type="INFO">
+ <paragraph>
+ Directive processed. Type="reStructuredText-test-directive", arguments=['Directive block contains one paragraph, no blank line before.'], options={}, content: None
+ <paragraph>
+ Paragraph.
+"""],
+["""\
+.. reStructuredText-test-directive::
+ block
+no blank line.
+
+Paragraph.
+""",
+"""\
+<document source="test data">
+ <system_message level="1" line="1" source="test data" type="INFO">
+ <paragraph>
+ Directive processed. Type="reStructuredText-test-directive", arguments=['block'], options={}, content: None
+ <system_message level="2" line="3" source="test data" type="WARNING">
+ <paragraph>
+ Explicit markup ends without a blank line; unexpected unindent.
+ <paragraph>
+ no blank line.
+ <paragraph>
+ Paragraph.
+"""],
+["""\
+.. reStructuredText-test-directive:: argument
+ :option: * value1
+ * value2
+
+Paragraph.
+""",
+"""\
+<document source="test data">
+ <system_message level="1" line="1" source="test data" type="INFO">
+ <paragraph>
+ Directive processed. Type="reStructuredText-test-directive", arguments=['argument'], options={'option': '* value1\\n* value2'}, content: None
+ <paragraph>
+ Paragraph.
+"""],
+["""\
+.. reStructuredText-test-directive::
+
+ Directive \\block \\*contains* \\\\backslashes.
+""",
+"""\
+<document source="test data">
+ <system_message level="1" line="1" source="test data" type="INFO">
+ <paragraph>
+ Directive processed. Type="reStructuredText-test-directive", arguments=[], options={}, content:
+ <literal_block xml:space="preserve">
+ Directive \\block \\*contains* \\\\backslashes.
+"""],
+]
+
+
+if __name__ == '__main__':
+ import unittest
+ unittest.main(defaultTest='suite')