test: strengthen logger handler duplication test

This commit is contained in:
2025-12-30 08:53:00 +01:00
parent 7828989150
commit 6785ecd45a

View File

@@ -1,4 +1,5 @@
import logging import logging
import sys
from skywipe.logger import LevelFilter, ProgressTracker, setup_logger from skywipe.logger import LevelFilter, ProgressTracker, setup_logger
@@ -48,11 +49,27 @@ def test_setup_logger_does_not_duplicate_handlers():
try: try:
setup_logger(verbose=False) setup_logger(verbose=False)
first_count = len(logger.handlers) first_handlers = list(logger.handlers)
stream_handlers = [
handler for handler in first_handlers
if isinstance(handler, logging.StreamHandler)
]
assert len(stream_handlers) == 2
assert {handler.stream for handler in stream_handlers} == {
sys.stdout,
sys.stderr,
}
assert not any(
isinstance(handler, logging.FileHandler)
for handler in first_handlers
)
first_count = len(first_handlers)
setup_logger(verbose=False) setup_logger(verbose=False)
second_count = len(logger.handlers) second_count = len(logger.handlers)
finally: finally:
for handler in list(logger.handlers): for handler in list(logger.handlers):
handler.close()
logger.removeHandler(handler) logger.removeHandler(handler)
for handler in original_handlers: for handler in original_handlers:
logger.addHandler(handler) logger.addHandler(handler)