mirror of
https://github.com/langgenius/dify.git
synced 2026-06-23 12:31:13 +08:00
fix: replace mock_logger with caplog in tests (#37757)
This commit is contained in:
parent
9fd153ad99
commit
29b95d3ced
@ -1,3 +1,4 @@
|
||||
import logging
|
||||
import time
|
||||
import uuid
|
||||
from datetime import datetime
|
||||
@ -142,9 +143,8 @@ class TestTraceClient:
|
||||
mock_notify.assert_called_once()
|
||||
|
||||
@patch("dify_trace_aliyun.data_exporter.traceclient.OTLPSpanExporter")
|
||||
@patch("dify_trace_aliyun.data_exporter.traceclient.logger")
|
||||
def test_add_span_queue_full(
|
||||
self, mock_logger: MagicMock, mock_exporter_class: MagicMock, trace_client_factory: type[TraceClient]
|
||||
self, mock_exporter_class: MagicMock, trace_client_factory: type[TraceClient], caplog: pytest.LogCaptureFixture
|
||||
):
|
||||
client = trace_client_factory(service_name="test-service", endpoint="http://test-endpoint", max_queue_size=1)
|
||||
|
||||
@ -164,12 +164,15 @@ class TestTraceClient:
|
||||
client.add_span(span_data)
|
||||
assert len(client.queue) == 1
|
||||
|
||||
client.add_span(span_data)
|
||||
assert len(client.queue) == 1
|
||||
mock_logger.warning.assert_called_with("Queue is full, likely spans will be dropped.")
|
||||
with caplog.at_level(logging.WARNING):
|
||||
client.add_span(span_data)
|
||||
assert len(client.queue) == 1
|
||||
assert "Queue is full, likely spans will be dropped." in caplog.text
|
||||
|
||||
@patch("dify_trace_aliyun.data_exporter.traceclient.OTLPSpanExporter")
|
||||
def test_export_batch_error(self, mock_exporter_class: MagicMock, trace_client_factory: type[TraceClient]):
|
||||
def test_export_batch_error(
|
||||
self, mock_exporter_class: MagicMock, trace_client_factory: type[TraceClient], caplog: pytest.LogCaptureFixture
|
||||
):
|
||||
mock_exporter = mock_exporter_class.return_value
|
||||
mock_exporter.export.side_effect = Exception("Export failed")
|
||||
|
||||
@ -177,9 +180,9 @@ class TestTraceClient:
|
||||
mock_span = MagicMock(spec=ReadableSpan)
|
||||
client.queue.append(mock_span)
|
||||
|
||||
with patch("dify_trace_aliyun.data_exporter.traceclient.logger") as mock_logger:
|
||||
with caplog.at_level(logging.WARNING):
|
||||
client._export_batch()
|
||||
mock_logger.warning.assert_called()
|
||||
assert "Error exporting spans" in caplog.text
|
||||
|
||||
@patch("dify_trace_aliyun.data_exporter.traceclient.OTLPSpanExporter")
|
||||
def test_worker_loop(self, mock_exporter_class: MagicMock, trace_client_factory: type[TraceClient]):
|
||||
|
||||
@ -307,13 +307,12 @@ class TestGetProjectUrl:
|
||||
monkeypatch.setattr(trace_instance, "entity", None)
|
||||
monkeypatch.setattr(trace_instance, "project_name", None)
|
||||
# Force an error by making string formatting fail
|
||||
with patch("dify_trace_weave.weave_trace.logger") as mock_logger:
|
||||
# Simulate exception via property
|
||||
original_entity = trace_instance.entity
|
||||
trace_instance.entity = None
|
||||
trace_instance.project_name = None
|
||||
url = trace_instance.get_project_url()
|
||||
assert "https://wandb.ai/" in url
|
||||
# Simulate exception via property
|
||||
original_entity = trace_instance.entity
|
||||
trace_instance.entity = None
|
||||
trace_instance.project_name = None
|
||||
url = trace_instance.get_project_url()
|
||||
assert "https://wandb.ai/" in url
|
||||
|
||||
|
||||
# ── TestTraceDispatcher ─────────────────────────────────────────────────────
|
||||
|
||||
Loading…
Reference in New Issue
Block a user