summaryrefslogtreecommitdiff
path: root/test/test_readers/test_python/showdoc
diff options
context:
space:
mode:
Diffstat (limited to 'test/test_readers/test_python/showdoc')
-rwxr-xr-xtest/test_readers/test_python/showdoc33
1 files changed, 33 insertions, 0 deletions
diff --git a/test/test_readers/test_python/showdoc b/test/test_readers/test_python/showdoc
new file mode 100755
index 000000000..6461960f8
--- /dev/null
+++ b/test/test_readers/test_python/showdoc
@@ -0,0 +1,33 @@
+#! /usr/bin/env python
+
+"""
+This is a tool for exploring module documentation trees generated by
+``docutils.readers.python.moduleparser.parse_module()`` from test data in
+docutils/test/test_readers/test_python/test_parser or stdin.
+
+Usage::
+
+ showdoc <key> <index>
+
+ showdoc < <module.py>
+
+Where ``<key>`` is the key to the ``totest`` dictionary, and ``<index>`` is
+the index of the list ``totest[key]``. If no arguments are given, stdin is
+used for input.
+"""
+
+import sys
+from docutils.readers.python.moduleparser import parse_module
+import test_parser
+
+if len(sys.argv) > 1:
+ key, caseno = sys.argv[1:]
+ print 'totest["%s"][%s][0]:\n' % (key, caseno)
+ input_text = test_parser.totest[key][int(caseno)][0]
+ input_source = "test_parser.totest['%s'][%s][0]" % (key, caseno)
+else:
+ input_text = sys.stdin.read()
+ input_source = '<stdin>'
+print input_text
+module = parse_module(input_text, input_source)
+print module,