summaryrefslogtreecommitdiff
path: root/tests/test_util_docstrings.py
diff options
context:
space:
mode:
authorTakeshi KOMIYA <i.tkomiya@gmail.com>2020-01-01 14:40:13 +0900
committerTakeshi KOMIYA <i.tkomiya@gmail.com>2020-01-04 13:28:07 +0900
commitb968bb91e99bf9831849828bdd729c8756f2bc39 (patch)
tree0857c1578ef8d58370dcc631e90e9caa3b40bc3e /tests/test_util_docstrings.py
parent0319faf8f1503453b6ce19020819a8cf44e39f13 (diff)
downloadsphinx-git-b968bb91e99bf9831849828bdd729c8756f2bc39.tar.gz
Close #6830: autodoc: consider a member private if docstring has "private" metadata
Diffstat (limited to 'tests/test_util_docstrings.py')
-rw-r--r--tests/test_util_docstrings.py29
1 files changed, 28 insertions, 1 deletions
diff --git a/tests/test_util_docstrings.py b/tests/test_util_docstrings.py
index bfd5b58b4..2f0901d06 100644
--- a/tests/test_util_docstrings.py
+++ b/tests/test_util_docstrings.py
@@ -8,7 +8,34 @@
:license: BSD, see LICENSE for details.
"""
-from sphinx.util.docstrings import prepare_docstring, prepare_commentdoc
+from sphinx.util.docstrings import (
+ extract_metadata, prepare_docstring, prepare_commentdoc
+)
+
+
+def test_extract_metadata():
+ metadata = extract_metadata(":meta foo: bar\n"
+ ":meta baz:\n")
+ assert metadata == {'foo': 'bar', 'baz': ''}
+
+ # field_list like text following just after paragaph is not a field_list
+ metadata = extract_metadata("blah blah blah\n"
+ ":meta foo: bar\n"
+ ":meta baz:\n")
+ assert metadata == {}
+
+ # field_list like text following after blank line is a field_list
+ metadata = extract_metadata("blah blah blah\n"
+ "\n"
+ ":meta foo: bar\n"
+ ":meta baz:\n")
+ assert metadata == {'foo': 'bar', 'baz': ''}
+
+ # non field_list item breaks field_list
+ metadata = extract_metadata(":meta foo: bar\n"
+ "blah blah blah\n"
+ ":meta baz:\n")
+ assert metadata == {'foo': 'bar'}
def test_prepare_docstring():