Files
slic/tests/test_utils_logign.py
T
tligui_y 8ed594ff5f
Run CI Tests / test (push) Successful in 35s
Update tests/test_utils_logign.py
2025-07-28 16:43:39 +02:00

38 lines
1.1 KiB
Python

import logging
import sys
import pytest
from slic.utils.logign import ignore_log_msg
# Define an independent logger for testing
log = logging.getLogger("test_logger")
@pytest.fixture(autouse=True)
def setup_logger():
# Remove all handlers
for h in log.handlers[:]:
log.removeHandler(h)
# Attach a fresh StreamHandler to stderr
handler = logging.StreamHandler(sys.stderr)
formatter = logging.Formatter('%(levelname)s:%(message)s')
handler.setFormatter(formatter)
log.addHandler(handler)
log.setLevel(logging.DEBUG)
def test_logger_capture_with_capsys(capsys):
capsys.readouterr()
log.warning("visible log")
captured = capsys.readouterr().err
print("Captured:", repr(captured))
assert "visible log" in captured
def test_ignore_log_msg_filters_warning(capsys):
capsys.readouterr()
with ignore_log_msg(log, lvl="WARNING", msg="to ignore"):
log.warning("to ignore")
log.warning("keep this")
captured = capsys.readouterr().err
assert "to ignore" not in captured
assert "keep this" in captured