tests: insert log filter on correct handler (#45615)
This commit is contained in:
parent
754d207de0
commit
7ce95390ac
|
@ -1,4 +1,5 @@
|
|||
import pytest
|
||||
from _pytest.logging import LogCaptureHandler
|
||||
|
||||
import logging
|
||||
|
||||
|
@ -21,8 +22,13 @@ class MockSender:
|
|||
|
||||
def test_request_context_filter(caplog, settings, tenants, client):
|
||||
root_logger = logging.getLogger()
|
||||
assert len(root_logger.handlers) == 1
|
||||
root_logger.handlers[0].addFilter(RequestContextFilter())
|
||||
for handler in root_logger.handlers:
|
||||
if handler.__class__ == LogCaptureHandler:
|
||||
handler.addFilter(RequestContextFilter())
|
||||
break
|
||||
else:
|
||||
assert False, 'No LogCaptureHandler found'
|
||||
|
||||
for tenant in tenants:
|
||||
with tenant_context(tenant):
|
||||
user = User.objects.create(first_name='John', last_name='Doe', username='john.doe',
|
||||
|
@ -62,17 +68,15 @@ def journald_handler(sender):
|
|||
root_logger = logging.getLogger()
|
||||
journald_handler = JournalHandler(sender_function=sender.send)
|
||||
journald_handler.addFilter(RequestContextFilter())
|
||||
root_logger.handlers.append(journald_handler)
|
||||
|
||||
root_logger.handlers.insert(0, journald_handler) # head insert
|
||||
try:
|
||||
yield journald_handler
|
||||
finally:
|
||||
root_logger.handlers.remove(journald_handler)
|
||||
root_logger.handlers.pop(0)
|
||||
|
||||
|
||||
def test_systemd(settings, tenants, client, journald_handler, sender):
|
||||
root_logger = logging.getLogger()
|
||||
assert len(root_logger.handlers) == 2
|
||||
|
||||
for tenant in tenants:
|
||||
with tenant_context(tenant):
|
||||
user = User.objects.create(first_name='John', last_name='Doe', username='john.doe',
|
||||
|
|
Loading…
Reference in New Issue