Use logger.disable and change arg name to --logger-disable

This commit is contained in:
Itxaso Aizpurua 2022-10-17 22:56:39 +02:00
parent 0e188d0772
commit 12ee883cfd
2 changed files with 8 additions and 8 deletions

View File

@ -298,10 +298,10 @@ def pytest_addoption(parser: Parser) -> None:
help="Auto-indent multiline messages passed to the logging module. Accepts true|on, false|off or an integer.", help="Auto-indent multiline messages passed to the logging module. Accepts true|on, false|off or an integer.",
) )
group.addoption( group.addoption(
"--logger-disabled", "--logger-disable",
action="append", action="append",
default=[], default=[],
dest="logger_disabled", dest="logger_disable",
help="Disable loggers by name", help="Disable loggers by name",
) )
@ -601,7 +601,7 @@ class LoggingPlugin:
get_option_ini(config, "log_auto_indent"), get_option_ini(config, "log_auto_indent"),
) )
self.log_cli_handler.setFormatter(log_cli_formatter) self.log_cli_handler.setFormatter(log_cli_formatter)
self._disable_logger(loggers_to_disable=config.option.logger_disabled) self._disable_logger(loggers_to_disable=config.option.logger_disable)
def _disable_logger(self, loggers_to_disable: List[str]) -> None: def _disable_logger(self, loggers_to_disable: List[str]) -> None:
if not loggers_to_disable: if not loggers_to_disable:
@ -610,7 +610,7 @@ class LoggingPlugin:
logger_names_to_suppress = set(loggers_to_disable) logger_names_to_suppress = set(loggers_to_disable)
for name in logger_names_to_suppress: for name in logger_names_to_suppress:
logger = logging.getLogger(name) logger = logging.getLogger(name)
logger.addFilter(lambda _: 0) logger.disabled = True
def _create_formatter(self, log_format, log_date_format, auto_indent): def _create_formatter(self, log_format, log_date_format, auto_indent):
# Color option doesn't exist if terminal plugin is disabled. # Color option doesn't exist if terminal plugin is disabled.

View File

@ -1182,7 +1182,7 @@ def test_disable_loggers(testdir):
assert caplog.record_tuples == [('test', 10, 'Visible text!')] assert caplog.record_tuples == [('test', 10, 'Visible text!')]
""" """
) )
result = testdir.runpytest("--logger-disabled=disabled", "-s") result = testdir.runpytest("--logger-disable=disabled", "-s")
assert result.ret == ExitCode.OK assert result.ret == ExitCode.OK
assert not result.stderr.lines assert not result.stderr.lines
@ -1204,7 +1204,7 @@ def test_disable_loggers_does_not_propagate(testdir):
""" """
) )
result = testdir.runpytest("--logger-disabled=parent.child", "-s") result = testdir.runpytest("--logger-disable=parent.child", "-s")
assert result.ret == ExitCode.OK assert result.ret == ExitCode.OK
assert not result.stderr.lines assert not result.stderr.lines
@ -1212,7 +1212,7 @@ def test_disable_loggers_does_not_propagate(testdir):
def test_disabled_loggers_help(testdir): def test_disabled_loggers_help(testdir):
result = testdir.runpytest("-h") result = testdir.runpytest("-h")
result.stdout.fnmatch_lines( result.stdout.fnmatch_lines(
[" --logger-disabled=LOGGER_DISABLED", "*Disable loggers by name*"] [" --logger-disable=LOGGER_DISABLE", "*Disable loggers by name*"]
) )
@ -1230,7 +1230,7 @@ def test_log_disabling_works_with_log_cli(testdir):
) )
result = testdir.runpytest( result = testdir.runpytest(
"--log-cli-level=DEBUG", "--log-cli-level=DEBUG",
"--logger-disabled=disabled", "--logger-disable=disabled",
) )
assert result.ret == ExitCode.OK assert result.ret == ExitCode.OK
result.stdout.fnmatch_lines( result.stdout.fnmatch_lines(