Skip to content

Commit a9bb179

Browse files
committed
update tests
1 parent 6f13d50 commit a9bb179

File tree

11 files changed

+84
-179
lines changed

11 files changed

+84
-179
lines changed

examples/voice/static/main.py

+3-8
Original file line numberDiff line numberDiff line change
@@ -1,15 +1,10 @@
11
import asyncio
22
import random
33

4-
from agents import (
5-
Agent,
6-
AudioInput,
7-
SingleAgentVoiceWorkflow,
8-
SingleAgentWorkflowCallbacks,
9-
VoicePipeline,
10-
function_tool,
11-
)
4+
from agents import Agent, function_tool
125
from agents.extensions.handoff_prompt import prompt_with_handoff_instructions
6+
from agents.voice import (AudioInput, SingleAgentVoiceWorkflow,
7+
SingleAgentWorkflowCallbacks, VoicePipeline)
138

149
from .util import AudioPlayer, record_audio
1510

examples/voice/streamed/agents.py

+2-8
Original file line numberDiff line numberDiff line change
@@ -2,15 +2,9 @@
22
from collections.abc import AsyncIterator
33
from typing import Callable
44

5-
from agents import (
6-
Agent,
7-
Runner,
8-
TResponseInputItem,
9-
VoiceWorkflowBase,
10-
VoiceWorkflowHelper,
11-
function_tool,
12-
)
5+
from agents import Agent, Runner, TResponseInputItem, function_tool
136
from agents.extensions.handoff_prompt import prompt_with_handoff_instructions
7+
from agents.voice import VoiceWorkflowBase, VoiceWorkflowHelper
148

159

1610
@function_tool

examples/voice/streamed/main.py

+1-2
Original file line numberDiff line numberDiff line change
@@ -11,8 +11,7 @@
1111
from textual.widgets import Button, RichLog, Static
1212
from typing_extensions import override
1313

14-
from agents import VoicePipeline
15-
from agents.voice.input import StreamedAudioInput
14+
from agents.voice import StreamedAudioInput, VoicePipeline
1615

1716
from .agents import MyWorkflow
1817

src/agents/__init__.py

+26-127
Original file line numberDiff line numberDiff line change
@@ -8,36 +8,17 @@
88
from .agent import Agent, ToolsToFinalOutputFunction, ToolsToFinalOutputResult
99
from .agent_output import AgentOutputSchema
1010
from .computer import AsyncComputer, Button, Computer, Environment
11-
from .exceptions import (
12-
AgentsException,
13-
InputGuardrailTripwireTriggered,
14-
MaxTurnsExceeded,
15-
ModelBehaviorError,
16-
OutputGuardrailTripwireTriggered,
17-
UserError,
18-
)
19-
from .guardrail import (
20-
GuardrailFunctionOutput,
21-
InputGuardrail,
22-
InputGuardrailResult,
23-
OutputGuardrail,
24-
OutputGuardrailResult,
25-
input_guardrail,
26-
output_guardrail,
27-
)
11+
from .exceptions import (AgentsException, InputGuardrailTripwireTriggered,
12+
MaxTurnsExceeded, ModelBehaviorError,
13+
OutputGuardrailTripwireTriggered, UserError)
14+
from .guardrail import (GuardrailFunctionOutput, InputGuardrail,
15+
InputGuardrailResult, OutputGuardrail,
16+
OutputGuardrailResult, input_guardrail,
17+
output_guardrail)
2818
from .handoffs import Handoff, HandoffInputData, HandoffInputFilter, handoff
29-
from .items import (
30-
HandoffCallItem,
31-
HandoffOutputItem,
32-
ItemHelpers,
33-
MessageOutputItem,
34-
ModelResponse,
35-
ReasoningItem,
36-
RunItem,
37-
ToolCallItem,
38-
ToolCallOutputItem,
39-
TResponseInputItem,
40-
)
19+
from .items import (HandoffCallItem, HandoffOutputItem, ItemHelpers,
20+
MessageOutputItem, ModelResponse, ReasoningItem, RunItem,
21+
ToolCallItem, ToolCallOutputItem, TResponseInputItem)
4122
from .lifecycle import AgentHooks, RunHooks
4223
from .model_settings import ModelSettings
4324
from .models.interface import Model, ModelProvider, ModelTracing
@@ -47,82 +28,23 @@
4728
from .result import RunResult, RunResultStreaming
4829
from .run import RunConfig, Runner
4930
from .run_context import RunContextWrapper, TContext
50-
from .stream_events import (
51-
AgentUpdatedStreamEvent,
52-
RawResponsesStreamEvent,
53-
RunItemStreamEvent,
54-
StreamEvent,
55-
)
56-
from .tool import (
57-
ComputerTool,
58-
FileSearchTool,
59-
FunctionTool,
60-
FunctionToolResult,
61-
Tool,
62-
WebSearchTool,
63-
default_tool_error_function,
64-
function_tool,
65-
)
66-
from .tracing import (
67-
AgentSpanData,
68-
CustomSpanData,
69-
FunctionSpanData,
70-
GenerationSpanData,
71-
GuardrailSpanData,
72-
HandoffSpanData,
73-
Span,
74-
SpanData,
75-
SpanError,
76-
SpeechGroupSpanData,
77-
SpeechSpanData,
78-
Trace,
79-
TracingProcessor,
80-
TranscriptionSpanData,
81-
add_trace_processor,
82-
agent_span,
83-
custom_span,
84-
function_span,
85-
gen_span_id,
86-
gen_trace_id,
87-
generation_span,
88-
get_current_span,
89-
get_current_trace,
90-
guardrail_span,
91-
handoff_span,
92-
set_trace_processors,
93-
set_tracing_disabled,
94-
set_tracing_export_api_key,
95-
speech_group_span,
96-
speech_span,
97-
trace,
98-
transcription_span,
99-
)
31+
from .stream_events import (AgentUpdatedStreamEvent, RawResponsesStreamEvent,
32+
RunItemStreamEvent, StreamEvent)
33+
from .tool import (ComputerTool, FileSearchTool, FunctionTool,
34+
FunctionToolResult, Tool, WebSearchTool,
35+
default_tool_error_function, function_tool)
36+
from .tracing import (AgentSpanData, CustomSpanData, FunctionSpanData,
37+
GenerationSpanData, GuardrailSpanData, HandoffSpanData,
38+
Span, SpanData, SpanError, SpeechGroupSpanData,
39+
SpeechSpanData, Trace, TracingProcessor,
40+
TranscriptionSpanData, add_trace_processor, agent_span,
41+
custom_span, function_span, gen_span_id, gen_trace_id,
42+
generation_span, get_current_span, get_current_trace,
43+
guardrail_span, handoff_span, set_trace_processors,
44+
set_tracing_disabled, set_tracing_export_api_key,
45+
speech_group_span, speech_span, trace,
46+
transcription_span)
10047
from .usage import Usage
101-
from .voice import (
102-
AudioInput,
103-
OpenAISTTModel,
104-
OpenAISTTTranscriptionSession,
105-
OpenAITTSModel,
106-
OpenAIVoiceModelProvider,
107-
SingleAgentVoiceWorkflow,
108-
SingleAgentWorkflowCallbacks,
109-
StreamedAudioInput,
110-
StreamedAudioResult,
111-
StreamedTranscriptionSession,
112-
STTModel,
113-
STTModelSettings,
114-
TTSModel,
115-
TTSModelSettings,
116-
VoiceModelProvider,
117-
VoicePipeline,
118-
VoicePipelineConfig,
119-
VoiceStreamEvent,
120-
VoiceStreamEventAudio,
121-
VoiceStreamEventLifecycle,
122-
VoiceWorkflowBase,
123-
VoiceWorkflowHelper,
124-
get_sentence_based_splitter,
125-
)
12648

12749

12850
def set_default_openai_key(key: str, use_for_tracing: bool = True) -> None:
@@ -268,27 +190,4 @@ def enable_verbose_stdout_logging():
268190
"gen_trace_id",
269191
"gen_span_id",
270192
"default_tool_error_function",
271-
"AudioInput",
272-
"StreamedAudioInput",
273-
"STTModel",
274-
"STTModelSettings",
275-
"TTSModel",
276-
"TTSModelSettings",
277-
"VoiceModelProvider",
278-
"StreamedAudioResult",
279-
"SingleAgentVoiceWorkflow",
280-
"OpenAIVoiceModelProvider",
281-
"OpenAISTTModel",
282-
"OpenAITTSModel",
283-
"VoiceStreamEventAudio",
284-
"VoiceStreamEventLifecycle",
285-
"VoiceStreamEvent",
286-
"VoicePipeline",
287-
"VoicePipelineConfig",
288-
"get_sentence_based_splitter",
289-
"VoiceWorkflowHelper",
290-
"VoiceWorkflowBase",
291-
"StreamedTranscriptionSession",
292-
"OpenAISTTTranscriptionSession",
293-
"SingleAgentWorkflowCallbacks",
294193
]

tests/voice/fake_models.py

+7-10
Original file line numberDiff line numberDiff line change
@@ -6,16 +6,13 @@
66
import numpy as np
77
import numpy.typing as npt
88

9-
from agents.voice import (
10-
AudioInput,
11-
StreamedAudioInput,
12-
StreamedTranscriptionSession,
13-
STTModel,
14-
STTModelSettings,
15-
TTSModel,
16-
TTSModelSettings,
17-
VoiceWorkflowBase,
18-
)
9+
try:
10+
from agents.voice import (AudioInput, StreamedAudioInput,
11+
StreamedTranscriptionSession, STTModel,
12+
STTModelSettings, TTSModel, TTSModelSettings,
13+
VoiceWorkflowBase)
14+
except ImportError:
15+
pass
1916

2017

2118
class FakeTTS(TTSModel):

tests/voice/helpers.py

+4-1
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,7 @@
1-
from agents.voice import StreamedAudioResult
1+
try:
2+
from agents.voice import StreamedAudioResult
3+
except ImportError:
4+
pass
25

36

47
async def extract_events(result: StreamedAudioResult) -> tuple[list[str], list[bytes]]:

tests/voice/test_input.py

+6-3
Original file line numberDiff line numberDiff line change
@@ -4,9 +4,12 @@
44
import numpy as np
55
import pytest
66

7-
from agents import UserError
8-
from agents.voice import AudioInput, StreamedAudioInput
9-
from agents.voice.input import DEFAULT_SAMPLE_RATE, _buffer_to_audio_file
7+
try:
8+
from agents import UserError
9+
from agents.voice import AudioInput, StreamedAudioInput
10+
from agents.voice.input import DEFAULT_SAMPLE_RATE, _buffer_to_audio_file
11+
except ImportError:
12+
pass
1013

1114

1215
def test_buffer_to_audio_file_int16():

tests/voice/test_openai_stt.py

+9-4
Original file line numberDiff line numberDiff line change
@@ -8,11 +8,16 @@
88
import numpy as np
99
import pytest
1010

11-
from agents.voice import OpenAISTTTranscriptionSession, StreamedAudioInput, STTModelSettings
12-
from agents.voice.exceptions import STTWebsocketConnectionError
13-
from agents.voice.models.openai_stt import EVENT_INACTIVITY_TIMEOUT
11+
try:
12+
from agents.voice import (OpenAISTTTranscriptionSession,
13+
StreamedAudioInput, STTModelSettings)
14+
from agents.voice.exceptions import STTWebsocketConnectionError
15+
from agents.voice.models.openai_stt import EVENT_INACTIVITY_TIMEOUT
16+
17+
from .fake_models import FakeStreamedAudioInput
18+
except ImportError:
19+
pass
1420

15-
from .fake_models import FakeStreamedAudioInput
1621

1722
# ===== Helpers =====
1823

tests/voice/test_openai_tts.py

+4-1
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,10 @@
55

66
import pytest
77

8-
from agents.voice import OpenAITTSModel, TTSModelSettings
8+
try:
9+
from agents.voice import OpenAITTSModel, TTSModelSettings
10+
except ImportError:
11+
pass
912

1013

1114
class _FakeStreamResponse:

tests/voice/test_pipeline.py

+9-4
Original file line numberDiff line numberDiff line change
@@ -4,10 +4,15 @@
44
import numpy.typing as npt
55
import pytest
66

7-
from agents.voice import AudioInput, TTSModelSettings, VoicePipeline, VoicePipelineConfig
8-
9-
from .fake_models import FakeStreamedAudioInput, FakeSTT, FakeTTS, FakeWorkflow
10-
from .helpers import extract_events
7+
try:
8+
from agents.voice import (AudioInput, TTSModelSettings, VoicePipeline,
9+
VoicePipelineConfig)
10+
11+
from .fake_models import (FakeStreamedAudioInput, FakeSTT, FakeTTS,
12+
FakeWorkflow)
13+
from .helpers import extract_events
14+
except ImportError:
15+
pass
1116

1217

1318
@pytest.mark.asyncio

tests/voice/test_workflow.py

+13-11
Original file line numberDiff line numberDiff line change
@@ -6,21 +6,23 @@
66
import pytest
77
from inline_snapshot import snapshot
88
from openai.types.responses import ResponseCompletedEvent
9-
from openai.types.responses.response_text_delta_event import ResponseTextDeltaEvent
9+
from openai.types.responses.response_text_delta_event import \
10+
ResponseTextDeltaEvent
1011

1112
from agents import Agent, Model, ModelSettings, ModelTracing, Tool
1213
from agents.agent_output import AgentOutputSchema
1314
from agents.handoffs import Handoff
14-
from agents.items import (
15-
ModelResponse,
16-
TResponseInputItem,
17-
TResponseOutputItem,
18-
TResponseStreamEvent,
19-
)
20-
from agents.voice import SingleAgentVoiceWorkflow
21-
22-
from ..fake_model import get_response_obj
23-
from ..test_responses import get_function_tool, get_function_tool_call, get_text_message
15+
from agents.items import (ModelResponse, TResponseInputItem,
16+
TResponseOutputItem, TResponseStreamEvent)
17+
18+
try:
19+
from agents.voice import SingleAgentVoiceWorkflow
20+
21+
from ..fake_model import get_response_obj
22+
from ..test_responses import (get_function_tool, get_function_tool_call,
23+
get_text_message)
24+
except ImportError:
25+
pass
2426

2527

2628
class FakeStreamingModel(Model):

0 commit comments

Comments
 (0)