summaryrefslogtreecommitdiff
path: root/pylint/test/unittest_checker_base.py
diff options
context:
space:
mode:
Diffstat (limited to 'pylint/test/unittest_checker_base.py')
-rw-r--r--pylint/test/unittest_checker_base.py46
1 files changed, 46 insertions, 0 deletions
diff --git a/pylint/test/unittest_checker_base.py b/pylint/test/unittest_checker_base.py
index f19544f..c68f379 100644
--- a/pylint/test/unittest_checker_base.py
+++ b/pylint/test/unittest_checker_base.py
@@ -246,6 +246,52 @@ class MultiNamingStyleTest(CheckerTestCase):
self.checker.visit_functiondef(func)
self.checker.leave_module(func.root)
+class ComparisonTest(CheckerTestCase):
+ CHECKER_CLASS = base.ComparisonChecker
+
+ def test_singleton_comparison(self):
+ node = test_utils.extract_node("foo == True")
+ message = Message('singleton-comparison',
+ node=node,
+ args=(True, "just 'expr' or 'expr is True'"))
+ with self.assertAddsMessages(message):
+ self.checker.visit_compare(node)
+
+ node = test_utils.extract_node("foo == False")
+ message = Message('singleton-comparison',
+ node=node,
+ args=(False, "'not expr' or 'expr is False'"))
+ with self.assertAddsMessages(message):
+ self.checker.visit_compare(node)
+
+ node = test_utils.extract_node("foo == None")
+ message = Message('singleton-comparison',
+ node=node,
+ args=(None, "'expr is None'"))
+ with self.assertAddsMessages(message):
+ self.checker.visit_compare(node)
+
+ node = test_utils.extract_node("True == foo")
+ message = Message('singleton-comparison',
+ node=node,
+ args=(True, "just 'expr' or 'expr is True'"))
+ with self.assertAddsMessages(message):
+ self.checker.visit_compare(node)
+
+ node = test_utils.extract_node("False == foo")
+ message = Message('singleton-comparison',
+ node=node,
+ args=(False, "'not expr' or 'expr is False'"))
+ with self.assertAddsMessages(message):
+ self.checker.visit_compare(node)
+
+ node = test_utils.extract_node("None == foo")
+ message = Message('singleton-comparison',
+ node=node,
+ args=(None, "'expr is None'"))
+ with self.assertAddsMessages(message):
+ self.checker.visit_compare(node)
+
if __name__ == '__main__':
unittest.main()