28 lines
655 B
Python
28 lines
655 B
Python
|
|
from __future__ import annotations
|
||
|
|
|
||
|
|
import json
|
||
|
|
import logging
|
||
|
|
|
||
|
|
from ariadne.utils.logging import JsonFormatter
|
||
|
|
|
||
|
|
|
||
|
|
def test_json_formatter_includes_extra_fields() -> None:
|
||
|
|
record = logging.LogRecord(
|
||
|
|
name="ariadne.test",
|
||
|
|
level=logging.INFO,
|
||
|
|
pathname=__file__,
|
||
|
|
lineno=10,
|
||
|
|
msg="hello",
|
||
|
|
args=(),
|
||
|
|
exc_info=None,
|
||
|
|
)
|
||
|
|
record.event = "unit_test"
|
||
|
|
record.request_code = "REQ123"
|
||
|
|
|
||
|
|
formatter = JsonFormatter()
|
||
|
|
payload = json.loads(formatter.format(record))
|
||
|
|
|
||
|
|
assert payload["message"] == "hello"
|
||
|
|
assert payload["event"] == "unit_test"
|
||
|
|
assert payload["request_code"] == "REQ123"
|