Files

23 lines
683 B
Python

import json
import logging
import unittest
from archive_clients.logging_config import RedactingJsonFormatter
class LoggingTests(unittest.TestCase):
def test_secret_is_redacted_from_message_and_fields(self):
formatter = RedactingJsonFormatter(["shared-secret"])
record = logging.LogRecord(
"test", logging.INFO, __file__, 1,
"token=%s", ("shared-secret",), None,
)
record.error_type = "shared-secret"
rendered = formatter.format(record)
self.assertNotIn("shared-secret", rendered)
self.assertEqual(json.loads(rendered)["error_type"], "[REDACTED]")
if __name__ == "__main__":
unittest.main()