1
- import pytest
2
1
import time
3
2
4
3
import mock
21
20
22
21
23
22
def test_writer_start (mock_writer_logs ):
24
- llmobs_span_writer = LLMObsSpanWriter (site = DATADOG_SITE , api_key = DD_API_KEY , interval = 1000 , timeout = 1 , is_agentless = False )
23
+ llmobs_span_writer = LLMObsSpanWriter (
24
+ site = DATADOG_SITE , api_key = DD_API_KEY , interval = 1000 , timeout = 1 , is_agentless = False
25
+ )
25
26
llmobs_span_writer .start ()
26
27
mock_writer_logs .debug .assert_has_calls ([mock .call ("started %r to %r" , "LLMObsSpanWriter" , AGENT_PROXY_URL )])
27
28
28
29
29
30
def test_buffer_limit (mock_writer_logs ):
30
- llmobs_span_writer = LLMObsSpanWriter (site = DATADOG_SITE , api_key = DD_API_KEY , interval = 1000 , timeout = 1 , is_agentless = False )
31
+ llmobs_span_writer = LLMObsSpanWriter (
32
+ site = DATADOG_SITE , api_key = DD_API_KEY , interval = 1000 , timeout = 1 , is_agentless = False
33
+ )
31
34
for _ in range (1001 ):
32
35
llmobs_span_writer .enqueue ({})
33
36
mock_writer_logs .warning .assert_called_with (
@@ -37,7 +40,9 @@ def test_buffer_limit(mock_writer_logs):
37
40
38
41
@mock .patch ("ddtrace.llmobs._writer.LLMObsSpanWriter._send_payload" )
39
42
def test_flush_queue_when_event_cause_queue_to_exceed_payload_limit (mock_send_payload , mock_writer_logs ):
40
- llmobs_span_writer = LLMObsSpanWriter (site = DATADOG_SITE , api_key = DD_API_KEY , interval = 1 , timeout = 1 , is_agentless = False )
43
+ llmobs_span_writer = LLMObsSpanWriter (
44
+ site = DATADOG_SITE , api_key = DD_API_KEY , interval = 1 , timeout = 1 , is_agentless = False
45
+ )
41
46
llmobs_span_writer .enqueue (_large_event ())
42
47
llmobs_span_writer .enqueue (_large_event ())
43
48
llmobs_span_writer .enqueue (_large_event ())
@@ -57,7 +62,9 @@ def test_flush_queue_when_event_cause_queue_to_exceed_payload_limit(mock_send_pa
57
62
58
63
@mock .patch ("ddtrace.llmobs._writer.LLMObsSpanWriter._send_payload" )
59
64
def test_truncating_oversized_events (mock_send_payload , mock_writer_logs ):
60
- llmobs_span_writer = LLMObsSpanWriter (site = DATADOG_SITE , api_key = DD_API_KEY , interval = 1000 , timeout = 1 , is_agentless = False )
65
+ llmobs_span_writer = LLMObsSpanWriter (
66
+ site = DATADOG_SITE , api_key = DD_API_KEY , interval = 1000 , timeout = 1 , is_agentless = False
67
+ )
61
68
llmobs_span_writer .enqueue (_oversized_llm_event ())
62
69
llmobs_span_writer .enqueue (_oversized_retrieval_event ())
63
70
llmobs_span_writer .enqueue (_oversized_workflow_event ())
@@ -72,23 +79,29 @@ def test_truncating_oversized_events(mock_send_payload, mock_writer_logs):
72
79
73
80
@mock .patch ("ddtrace.llmobs._writer.BaseLLMObsWriter._send_payload" )
74
81
def test_send_completion_event (mock_send_payload , mock_writer_logs ):
75
- llmobs_span_writer = LLMObsSpanWriter (site = DATADOG_SITE , api_key = DD_API_KEY , interval = 1 , timeout = 1 , is_agentless = False )
82
+ llmobs_span_writer = LLMObsSpanWriter (
83
+ site = DATADOG_SITE , api_key = DD_API_KEY , interval = 1 , timeout = 1 , is_agentless = False
84
+ )
76
85
llmobs_span_writer .enqueue (_completion_event ())
77
86
llmobs_span_writer .periodic ()
78
87
mock_writer_logs .debug .assert_has_calls ([mock .call ("encoded %d LLMObs %s events to be sent" , 1 , "span" )])
79
88
80
89
81
90
@mock .patch ("ddtrace.llmobs._writer.BaseLLMObsWriter._send_payload" )
82
91
def test_send_chat_completion_event (mock_send_payload , mock_writer_logs ):
83
- llmobs_span_writer = LLMObsSpanWriter (site = DATADOG_SITE , api_key = DD_API_KEY , interval = 1 , timeout = 1 , is_agentless = False )
92
+ llmobs_span_writer = LLMObsSpanWriter (
93
+ site = DATADOG_SITE , api_key = DD_API_KEY , interval = 1 , timeout = 1 , is_agentless = False
94
+ )
84
95
llmobs_span_writer .enqueue (_chat_completion_event ())
85
96
llmobs_span_writer .periodic ()
86
97
mock_writer_logs .debug .assert_has_calls ([mock .call ("encoded %d LLMObs %s events to be sent" , 1 , "span" )])
87
98
88
99
89
100
@mock .patch ("ddtrace.llmobs._writer.BaseLLMObsWriter._send_payload" )
90
101
def test_send_timed_events (mock_send_payload , mock_writer_logs ):
91
- llmobs_span_writer = LLMObsSpanWriter (site = DATADOG_SITE , api_key = DD_API_KEY , interval = 0.05 , timeout = 1 , is_agentless = False )
102
+ llmobs_span_writer = LLMObsSpanWriter (
103
+ site = DATADOG_SITE , api_key = DD_API_KEY , interval = 0.05 , timeout = 1 , is_agentless = False
104
+ )
92
105
llmobs_span_writer .start ()
93
106
mock_writer_logs .reset_mock ()
94
107
0 commit comments