diff --git a/tests/test_utils_logign.py b/tests/test_utils_logign.py index 7e925379f..4135b2690 100644 --- a/tests/test_utils_logign.py +++ b/tests/test_utils_logign.py @@ -1,59 +1,37 @@ -import logging -import pytest -import pytest -import sys -import os -sys.path.insert(0, os.path.abspath(os.path.join(os.path.dirname(__file__), '..'))) -from slic.utils.logign import * -from slic.utils.logcfg import add_log_Level, logcfg - -import logzero - import logging import sys import pytest -from logzero import logger as log from slic.utils.logign import ignore_log_msg -from slic.utils.logcfg import add_log_Level, logcfg -@pytest.fixture(scope="module", autouse=True) -def setup_custom_levels(): - add_log_Level(log, "ENLARGE", logging.INFO + 5, func_name="enlarge") - logcfg("DEBUG") # Allow everything +# Define an independent logger for testing +log = logging.getLogger("test_logger") @pytest.fixture(autouse=True) -def reset_log_handlers(): +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 = logzero.LogFormatter() + formatter = logging.Formatter('%(levelname)s:%(message)s') handler.setFormatter(formatter) log.addHandler(handler) + log.setLevel(logging.DEBUG) -def test_ignore_log_msg_works(capsys): +def test_logger_capture_with_capsys(capsys): capsys.readouterr() - - # Log without filter log.warning("visible log") captured = capsys.readouterr().err - print("Captured 1:", repr(captured)) + print("Captured:", repr(captured)) assert "visible log" in captured - # Log inside context (should be hidden) +def test_ignore_log_msg_filters_warning(capsys): capsys.readouterr() - with ignore_log_msg(log, lvl="WARNING", msg="hide me"): - log.warning("hide me") - log.warning("keep me") + with ignore_log_msg(log, lvl="WARNING", msg="to ignore"): + log.warning("to ignore") + log.warning("keep this") captured = capsys.readouterr().err - print("Captured 2:", repr(captured)) - assert "hide me" not in captured - assert "keep me" in captured - - # Log again after context (should be shown) - capsys.readouterr() - log.warning("hide me") - captured = capsys.readouterr().err - print("Captured 3:", repr(captured)) - assert "hide me" in captured + assert "to ignore" not in captured + assert "keep this" in captured