import json import logging import unittest from backend.app.logging_config import JsonLogFormatter, RequestContextFilter, bind_request_id, reset_request_id class JsonLoggingTests(unittest.TestCase): def test_json_formatter_includes_request_context(self) -> None: token = bind_request_id("request-123") try: record = logging.LogRecord("magent.test", logging.INFO, __file__, 1, "hello %s", ("world",), None) RequestContextFilter().filter(record) payload = json.loads(JsonLogFormatter().format(record)) finally: reset_request_id(token) self.assertEqual(payload["level"], "INFO") self.assertEqual(payload["logger"], "magent.test") self.assertEqual(payload["request_id"], "request-123") self.assertEqual(payload["message"], "hello world") if __name__ == "__main__": unittest.main()