diff options
Diffstat (limited to 'test/test_logging.py')
-rw-r--r-- | test/test_logging.py | 49 |
1 files changed, 49 insertions, 0 deletions
diff --git a/test/test_logging.py b/test/test_logging.py new file mode 100644 index 0000000..fe7e638 --- /dev/null +++ b/test/test_logging.py @@ -0,0 +1,49 @@ +# Copyright 2014 Google Inc. All Rights Reserved. +""" +Unittest for the logging checker. +""" +from logilab.common.testlib import unittest_main +from astroid import test_utils + +from pylint.checkers import logging + +from pylint.testutils import CheckerTestCase, Message, set_config + + +class LoggingModuleDetectionTest(CheckerTestCase): + CHECKER_CLASS = logging.LoggingChecker + + def test_detects_standard_logging_module(self): + stmts = test_utils.extract_node(""" + import logging #@ + logging.warn('%s' % '%s') #@ + """) + self.checker.visit_module(None) + self.checker.visit_import(stmts[0]) + with self.assertAddsMessages(Message('W1201', node=stmts[1])): + self.checker.visit_callfunc(stmts[1]) + + def test_detects_renamed_standard_logging_module(self): + stmts = test_utils.extract_node(""" + import logging as blogging #@ + blogging.warn('%s' % '%s') #@ + """) + self.checker.visit_module(None) + self.checker.visit_import(stmts[0]) + with self.assertAddsMessages(Message('W1201', node=stmts[1])): + self.checker.visit_callfunc(stmts[1]) + + @set_config(logging_modules=['logging', 'my.logging']) + def test_nonstandard_logging_module(self): + stmts = test_utils.extract_node(""" + from my import logging as blogging #@ + blogging.warn('%s' % '%s') #@ + """) + self.checker.visit_module(None) + self.checker.visit_import(stmts[0]) + with self.assertAddsMessages(Message('W1201', node=stmts[1])): + self.checker.visit_callfunc(stmts[1]) + + +if __name__ == '__main__': + unittest_main() |