From 03d754dd86626bd6aa4216d08acab9e9c061ac1e Mon Sep 17 00:00:00 2001 From: Florian Bruhin Date: Fri, 6 Jun 2014 16:51:24 +0200 Subject: [PATCH] Fix logfilter bugs --- qutebrowser/test/utils/test_log.py | 14 +++++++------- qutebrowser/utils/log.py | 6 +++--- 2 files changed, 10 insertions(+), 10 deletions(-) diff --git a/qutebrowser/test/utils/test_log.py b/qutebrowser/test/utils/test_log.py index 26dfcaded..9beaef054 100644 --- a/qutebrowser/test/utils/test_log.py +++ b/qutebrowser/test/utils/test_log.py @@ -79,17 +79,17 @@ class LogFilterTests(TestCase): self.assertTrue(logfilter.filter(record)) def test_debug(self): - """Test if debug messages are never filtered.""" + """Test if messages more important than debug are never filtered.""" logfilter = log.LogFilter(["eggs"]) - # First check if the filter works as intended with non-debug messages - record = self._make_record("eggs", level=logging.INFO) - self.assertTrue(logfilter.filter(record)) - record = self._make_record("bacon", level=logging.INFO) - self.assertFalse(logfilter.filter(record)) - # Then check if debug is not filtered + # First check if the filter works as intended with debug messages record = self._make_record("eggs", level=logging.DEBUG) self.assertTrue(logfilter.filter(record)) record = self._make_record("bacon", level=logging.DEBUG) + self.assertFalse(logfilter.filter(record)) + # Then check if info is not filtered + record = self._make_record("eggs", level=logging.INFO) + self.assertTrue(logfilter.filter(record)) + record = self._make_record("bacon", level=logging.INFO) self.assertTrue(logfilter.filter(record)) diff --git a/qutebrowser/utils/log.py b/qutebrowser/utils/log.py index b6292b338..e549174ed 100644 --- a/qutebrowser/utils/log.py +++ b/qutebrowser/utils/log.py @@ -83,7 +83,7 @@ def init_log(args): console, ram = _init_handlers(numeric_level, args.color) if args.logfilter is not None and numeric_level <= logging.DEBUG: - console.addFilter(args.logfilter.split(',')) + console.addFilter(LogFilter(args.logfilter.split(','))) root = getLogger() root.addHandler(console) root.addHandler(ram) @@ -216,8 +216,8 @@ class LogFilter(logging.Filter): """Determine if the specified record is to be logged.""" if self.names is None: return True - if record.levelno <= logging.DEBUG: - # DEBUG or more important, so we won't filter at all + if record.levelno > logging.DEBUG: + # More important than DEBUG, so we won't filter at all return True for name in self.names: if record.name == name: