From d527cdd3933dcb04449a51ee1ebe443d60830ae7 Mon Sep 17 00:00:00 2001 From: Chris Lloyd-Jones <19361656+Sealjay@users.noreply.github.com> Date: Sat, 2 May 2026 17:46:09 +0100 Subject: [PATCH] fix: make json logging test resilient to pytest handler ordering Check that any root logger handler uses JsonFormatter, not just handlers[0] - pytest's logging plugin may prepend its own handler. Co-Authored-By: Claude Opus 4.6 (1M context) --- backend/tests/test_json_logging.py | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/backend/tests/test_json_logging.py b/backend/tests/test_json_logging.py index cd7e07a..417d0ed 100644 --- a/backend/tests/test_json_logging.py +++ b/backend/tests/test_json_logging.py @@ -79,7 +79,9 @@ def test_root_logger_uses_json_formatter(self): root_logger = logging.getLogger() assert root_logger.handlers, "Root logger must have at least one handler" - handler = root_logger.handlers[0] - assert isinstance( - handler.formatter, JsonFormatter - ), "Root logger handler formatter must be JsonFormatter" + # Check any handler, not just [0] - pytest's logging plugin may prepend its own. + json_handlers = [ + h for h in root_logger.handlers + if isinstance(h.formatter, JsonFormatter) + ] + assert json_handlers, "At least one root logger handler must use JsonFormatter"