summaryrefslogtreecommitdiff
path: root/pylint/test/extensions
diff options
context:
space:
mode:
authorGlenn Matthews <glenn@e-dad.net>2016-07-13 15:01:04 -0400
committerClaudiu Popa <pcmanticore@gmail.com>2016-07-19 22:09:47 +0300
commit1f353874d44ef27cb0e51700e7fb44de4c1b3335 (patch)
treeb2e5937a39b6932ee2a1ddf7c5c9aeed4a10dbfb /pylint/test/extensions
parente2fc136279775a569b8969bdd0e3827166d969ec (diff)
downloadpylint-git-1f353874d44ef27cb0e51700e7fb44de4c1b3335.tar.gz
Bisect 'missing-[returns|yield]-doc' warnings into separate text/type checks.
Diffstat (limited to 'pylint/test/extensions')
-rw-r--r--pylint/test/extensions/test_check_return_docs.py145
-rw-r--r--pylint/test/extensions/test_check_yields_docs.py69
2 files changed, 130 insertions, 84 deletions
diff --git a/pylint/test/extensions/test_check_return_docs.py b/pylint/test/extensions/test_check_return_docs.py
index c2966c601..4be854ac9 100644
--- a/pylint/test/extensions/test_check_return_docs.py
+++ b/pylint/test/extensions/test_check_return_docs.py
@@ -36,9 +36,8 @@ class DocstringCheckerReturnTest(CheckerTestCase):
''')
return_node = node.body[0]
with self.assertAddsMessages(
- Message(
- msg_id='missing-returns-doc',
- node=node)):
+ Message(msg_id='missing-return-doc', node=node),
+ Message(msg_id='missing-return-type-doc', node=node)):
self.checker.visit_return(return_node)
def test_ignores_unknown_style(self):
@@ -61,9 +60,7 @@ class DocstringCheckerReturnTest(CheckerTestCase):
''')
return_node = node.body[0]
with self.assertAddsMessages(
- Message(
- msg_id='missing-returns-doc',
- node=node)):
+ Message(msg_id='missing-return-type-doc', node=node)):
self.checker.visit_return(return_node)
def test_warn_partial_sphinx_returns_type(self):
@@ -77,9 +74,7 @@ class DocstringCheckerReturnTest(CheckerTestCase):
''')
return_node = node.body[0]
with self.assertAddsMessages(
- Message(
- msg_id='missing-returns-doc',
- node=node)):
+ Message(msg_id='missing-return-doc', node=node)):
self.checker.visit_return(return_node)
def test_warn_missing_sphinx_returns(self):
@@ -94,9 +89,8 @@ class DocstringCheckerReturnTest(CheckerTestCase):
''')
return_node = node.body[0]
with self.assertAddsMessages(
- Message(
- msg_id='missing-returns-doc',
- node=node)):
+ Message(msg_id='missing-return-doc', node=node),
+ Message(msg_id='missing-return-type-doc', node=node)):
self.checker.visit_return(return_node)
def test_warn_partial_google_returns(self):
@@ -111,9 +105,22 @@ class DocstringCheckerReturnTest(CheckerTestCase):
''')
return_node = node.body[0]
with self.assertAddsMessages(
- Message(
- msg_id='missing-returns-doc',
- node=node)):
+ Message(msg_id='missing-return-type-doc', node=node)):
+ self.checker.visit_return(return_node)
+
+ def test_warn_partial_google_returns_type(self):
+ node = astroid.extract_node('''
+ def my_func(self):
+ """This is a docstring.
+
+ Returns:
+ bool:
+ """
+ return False
+ ''')
+ return_node = node.body[0]
+ with self.assertAddsMessages(
+ Message(msg_id='missing-return-doc', node=node)):
self.checker.visit_return(return_node)
def test_warn_missing_google_returns(self):
@@ -128,9 +135,29 @@ class DocstringCheckerReturnTest(CheckerTestCase):
''')
return_node = node.body[0]
with self.assertAddsMessages(
- Message(
- msg_id='missing-returns-doc',
- node=node)):
+ Message(msg_id='missing-return-doc', node=node),
+ Message(msg_id='missing-return-type-doc', node=node)):
+ self.checker.visit_return(return_node)
+
+ def test_warn_partial_numpy_returns_type(self):
+ node = astroid.extract_node('''
+ def my_func(self, doc_type):
+ """This is a docstring.
+
+ Arguments
+ ---------
+ doc_type : str
+ Numpy
+
+ Returns
+ -------
+ bool
+ """
+ return False
+ ''')
+ return_node = node.body[0]
+ with self.assertAddsMessages(
+ Message(msg_id='missing-return-doc', node=node)):
self.checker.visit_return(return_node)
def test_warn_missing_numpy_returns(self):
@@ -147,9 +174,8 @@ class DocstringCheckerReturnTest(CheckerTestCase):
''')
return_node = node.body[0]
with self.assertAddsMessages(
- Message(
- msg_id='missing-returns-doc',
- node=node)):
+ Message(msg_id='missing-return-doc', node=node),
+ Message(msg_id='missing-return-type-doc', node=node)):
self.checker.visit_return(return_node)
def test_find_sphinx_returns(self):
@@ -327,9 +353,7 @@ class DocstringCheckerReturnTest(CheckerTestCase):
''')
return_node = node.body[0]
with self.assertAddsMessages(
- Message(
- msg_id='missing-returns-doc',
- node=node)):
+ Message(msg_id='missing-return-doc', node=node)):
self.checker.visit_return(return_node)
def test_warns_google_return_list_of_custom_class_without_description(self):
@@ -338,15 +362,13 @@ class DocstringCheckerReturnTest(CheckerTestCase):
"""This is a docstring.
Returns:
- list(:class:`mymodule.Class`)
+ list(:class:`mymodule.Class`):
"""
return [mymodule.Class()]
''')
return_node = node.body[0]
with self.assertAddsMessages(
- Message(
- msg_id='missing-returns-doc',
- node=node)):
+ Message(msg_id='missing-return-doc', node=node)):
self.checker.visit_return(return_node)
def test_warns_numpy_return_list_of_custom_class_without_description(self):
@@ -362,9 +384,7 @@ class DocstringCheckerReturnTest(CheckerTestCase):
''')
return_node = node.body[0]
with self.assertAddsMessages(
- Message(
- msg_id='missing-returns-doc',
- node=node)):
+ Message(msg_id='missing-return-doc', node=node)):
self.checker.visit_return(return_node)
def test_warns_sphinx_redundant_return_doc(self):
@@ -373,14 +393,24 @@ class DocstringCheckerReturnTest(CheckerTestCase):
"""This is a docstring.
:returns: One
+ """
+ return None
+ ''')
+ with self.assertAddsMessages(
+ Message(msg_id='redundant-returns-doc', node=node)):
+ self.checker.visit_functiondef(node)
+
+ def test_warns_sphinx_redundant_rtype_doc(self):
+ node = astroid.extract_node('''
+ def my_func(self):
+ """This is a docstring.
+
:rtype: int
"""
return None
''')
with self.assertAddsMessages(
- Message(
- msg_id='redundant-returns-doc',
- node=node)):
+ Message(msg_id='redundant-returns-doc', node=node)):
self.checker.visit_functiondef(node)
def test_warns_google_redundant_return_doc(self):
@@ -389,14 +419,26 @@ class DocstringCheckerReturnTest(CheckerTestCase):
"""This is a docstring.
Returns:
- int: One
+ One
"""
return None
''')
with self.assertAddsMessages(
- Message(
- msg_id='redundant-returns-doc',
- node=node)):
+ Message(msg_id='redundant-returns-doc', node=node)):
+ self.checker.visit_functiondef(node)
+
+ def test_warns_google_redundant_rtype_doc(self):
+ node = astroid.extract_node('''
+ def my_func(self):
+ """This is a docstring.
+
+ Returns:
+ int:
+ """
+ return None
+ ''')
+ with self.assertAddsMessages(
+ Message(msg_id='redundant-returns-doc', node=node)):
self.checker.visit_functiondef(node)
def test_warns_numpy_redundant_return_doc(self):
@@ -412,9 +454,22 @@ class DocstringCheckerReturnTest(CheckerTestCase):
return None
''')
with self.assertAddsMessages(
- Message(
- msg_id='redundant-returns-doc',
- node=node)):
+ Message(msg_id='redundant-returns-doc', node=node)):
+ self.checker.visit_functiondef(node)
+
+ def test_warns_numpy_redundant_rtype_doc(self):
+ node = astroid.extract_node('''
+ def my_func(self):
+ """This is a docstring.
+
+ Returns
+ -------
+ int
+ """
+ return None
+ ''')
+ with self.assertAddsMessages(
+ Message(msg_id='redundant-returns-doc', node=node)):
self.checker.visit_functiondef(node)
def test_ignores_sphinx_redundant_return_doc_multiple_returns(self):
@@ -494,9 +549,7 @@ class DocstringCheckerReturnTest(CheckerTestCase):
yield 1
''')
with self.assertAddsMessages(
- Message(
- msg_id='redundant-returns-doc',
- node=node)):
+ Message(msg_id='redundant-returns-doc', node=node)):
self.checker.visit_functiondef(node)
def test_warns_numpy_redundant_return_doc_yield(self):
@@ -512,9 +565,7 @@ class DocstringCheckerReturnTest(CheckerTestCase):
yield 1
''')
with self.assertAddsMessages(
- Message(
- msg_id='redundant-returns-doc',
- node=node)):
+ Message(msg_id='redundant-returns-doc', node=node)):
self.checker.visit_functiondef(node)
diff --git a/pylint/test/extensions/test_check_yields_docs.py b/pylint/test/extensions/test_check_yields_docs.py
index 98fb82780..42455aa4b 100644
--- a/pylint/test/extensions/test_check_yields_docs.py
+++ b/pylint/test/extensions/test_check_yields_docs.py
@@ -36,9 +36,8 @@ class DocstringCheckerYieldTest(CheckerTestCase):
''')
yield_node = node.body[0]
with self.assertAddsMessages(
- Message(
- msg_id='missing-yields-doc',
- node=node)):
+ Message(msg_id='missing-yield-doc', node=node),
+ Message(msg_id='missing-yield-type-doc', node=node)):
self.checker.visit_yield(yield_node)
def test_ignores_unknown_style(self):
@@ -61,9 +60,7 @@ class DocstringCheckerYieldTest(CheckerTestCase):
''')
yield_node = node.body[0]
with self.assertAddsMessages(
- Message(
- msg_id='missing-yields-doc',
- node=node)):
+ Message(msg_id='missing-yield-type-doc', node=node)):
self.checker.visit_yield(yield_node)
def test_warn_partial_sphinx_yields_type(self):
@@ -77,9 +74,7 @@ class DocstringCheckerYieldTest(CheckerTestCase):
''')
yield_node = node.body[0]
with self.assertAddsMessages(
- Message(
- msg_id='missing-yields-doc',
- node=node)):
+ Message(msg_id='missing-yield-doc', node=node)):
self.checker.visit_yield(yield_node)
def test_warn_missing_sphinx_yields(self):
@@ -94,9 +89,8 @@ class DocstringCheckerYieldTest(CheckerTestCase):
''')
yield_node = node.body[0]
with self.assertAddsMessages(
- Message(
- msg_id='missing-yields-doc',
- node=node)):
+ Message(msg_id='missing-yield-doc', node=node),
+ Message(msg_id='missing-yield-type-doc', node=node)):
self.checker.visit_yield(yield_node)
def test_warn_partial_google_yields(self):
@@ -111,9 +105,22 @@ class DocstringCheckerYieldTest(CheckerTestCase):
''')
yield_node = node.body[0]
with self.assertAddsMessages(
- Message(
- msg_id='missing-yields-doc',
- node=node)):
+ Message(msg_id='missing-yield-type-doc', node=node)):
+ self.checker.visit_yield(yield_node)
+
+ def test_warn_partial_google_yields_type(self):
+ node = astroid.extract_node('''
+ def my_func(self):
+ """This is a docstring.
+
+ Yields:
+ bool:
+ """
+ yield False
+ ''')
+ yield_node = node.body[0]
+ with self.assertAddsMessages(
+ Message(msg_id='missing-yield-doc', node=node)):
self.checker.visit_yield(yield_node)
def test_warn_missing_google_yields(self):
@@ -128,9 +135,8 @@ class DocstringCheckerYieldTest(CheckerTestCase):
''')
yield_node = node.body[0]
with self.assertAddsMessages(
- Message(
- msg_id='missing-yields-doc',
- node=node)):
+ Message(msg_id='missing-yield-doc', node=node),
+ Message(msg_id='missing-yield-type-doc', node=node)):
self.checker.visit_yield(yield_node)
def test_warn_missing_numpy_yields(self):
@@ -147,9 +153,8 @@ class DocstringCheckerYieldTest(CheckerTestCase):
''')
yield_node = node.body[0]
with self.assertAddsMessages(
- Message(
- msg_id='missing-yields-doc',
- node=node)):
+ Message(msg_id='missing-yield-doc', node=node),
+ Message(msg_id='missing-yield-type-doc', node=node)):
self.checker.visit_yield(yield_node)
def test_find_sphinx_yields(self):
@@ -286,9 +291,7 @@ class DocstringCheckerYieldTest(CheckerTestCase):
''')
yield_node = node.body[0]
with self.assertAddsMessages(
- Message(
- msg_id='missing-yields-doc',
- node=node)):
+ Message(msg_id='missing-yield-doc', node=node)):
self.checker.visit_yield(yield_node)
def test_warns_google_yield_list_of_custom_class_without_description(self):
@@ -297,15 +300,13 @@ class DocstringCheckerYieldTest(CheckerTestCase):
"""This is a docstring.
Yields:
- list(:class:`mymodule.Class`)
+ list(:class:`mymodule.Class`):
"""
yield [mymodule.Class()]
''')
yield_node = node.body[0]
with self.assertAddsMessages(
- Message(
- msg_id='missing-yields-doc',
- node=node)):
+ Message(msg_id='missing-yield-doc', node=node)):
self.checker.visit_yield(yield_node)
def test_warns_numpy_yield_list_of_custom_class_without_description(self):
@@ -321,9 +322,7 @@ class DocstringCheckerYieldTest(CheckerTestCase):
''')
yield_node = node.body[0]
with self.assertAddsMessages(
- Message(
- msg_id='missing-yields-doc',
- node=node)):
+ Message(msg_id='missing-yield-doc', node=node)):
self.checker.visit_yield(yield_node)
# No such thing as redundant yield documentation for sphinx because it
@@ -377,9 +376,7 @@ class DocstringCheckerYieldTest(CheckerTestCase):
return 1
''')
with self.assertAddsMessages(
- Message(
- msg_id='redundant-yields-doc',
- node=node)):
+ Message(msg_id='redundant-yields-doc', node=node)):
self.checker.visit_functiondef(node)
def test_warns_numpy_redundant_yield_doc_return(self):
@@ -395,9 +392,7 @@ class DocstringCheckerYieldTest(CheckerTestCase):
return 1
''')
with self.assertAddsMessages(
- Message(
- msg_id='redundant-yields-doc',
- node=node)):
+ Message(msg_id='redundant-yields-doc', node=node)):
self.checker.visit_functiondef(node)