22from typing import Dict , List
33from unittest .mock import Mock
44from multi_agent_orchestrator .types import ConversationMessage
5- from multi_agent_orchestrator .agents import AgentProcessingResult , AgentResponse , AgentCallbacks , AgentOptions , Agent
5+ from multi_agent_orchestrator .agents import (
6+ AgentProcessingResult ,
7+ AgentResponse ,
8+ AgentCallbacks ,
9+ AgentOptions ,
10+ Agent ,
11+ )
12+
613
714class TestAgent :
815 @pytest .fixture
@@ -13,7 +20,7 @@ def mock_agent_options(self):
1320 model_id = "test-model" ,
1421 region = "us-west-2" ,
1522 save_chat = True ,
16- callbacks = None
23+ callbacks = None ,
1724 )
1825
1926 @pytest .fixture
@@ -25,7 +32,7 @@ async def process_request(
2532 user_id : str ,
2633 session_id : str ,
2734 chat_history : List [ConversationMessage ],
28- additional_params : Dict [str , str ] = None
35+ additional_params : Dict [str , str ] = None ,
2936 ):
3037 return ConversationMessage (role = "assistant" , content = "Mock response" )
3138
@@ -37,7 +44,7 @@ def test_agent_processing_result(self):
3744 agent_id = "test-agent" ,
3845 agent_name = "Test Agent" ,
3946 user_id = "user123" ,
40- session_id = "session456"
47+ session_id = "session456" ,
4148 )
4249 assert result .user_input == "Hello"
4350 assert result .agent_id == "test-agent"
@@ -53,9 +60,11 @@ def test_agent_response(self):
5360 agent_id = "test-agent" ,
5461 agent_name = "Test Agent" ,
5562 user_id = "user123" ,
56- session_id = "session456"
63+ session_id = "session456" ,
64+ )
65+ response = AgentResponse (
66+ metadata = metadata , output = "Hello, user!" , streaming = False
5767 )
58- response = AgentResponse (metadata = metadata , output = "Hello, user!" , streaming = False )
5968 assert response .metadata == metadata
6069 assert response .output == "Hello, user!"
6170 assert response .streaming is False
@@ -82,6 +91,17 @@ def test_agent_initialization(self, mock_agent, mock_agent_options):
8291 def test_generate_key_from_name (self ):
8392 assert Agent .generate_key_from_name ("Test Agent" ) == "test-agent"
8493 assert Agent .generate_key_from_name ("Complex Name! @#$%" ) == "complex-name-"
94+ assert Agent .generate_key_from_name ("Agent123" ) == "agent123"
95+ assert Agent .generate_key_from_name ("Agent2-test" ) == "agent2-test"
96+ assert Agent .generate_key_from_name ("Agent4-test" ) == "agent4-test"
97+ assert Agent .generate_key_from_name ("Agent 123!" ) == "agent-123"
98+ assert Agent .generate_key_from_name ("Agent@#$%^&*()" ) == "agent"
99+ assert Agent .generate_key_from_name ("Trailing Space " ) == "trailing-space-"
100+ assert (
101+ Agent .generate_key_from_name ("123 Mixed Content 456!" )
102+ == "123-mixed-content-456"
103+ )
104+ assert Agent .generate_key_from_name ("Mix@of123Symbols$" ) == "mixof123symbols"
85105
86106 @pytest .mark .asyncio
87107 async def test_process_request (self , mock_agent ):
@@ -90,8 +110,8 @@ async def test_process_request(self, mock_agent):
90110 input_text = "Hi" ,
91111 user_id = "user123" ,
92112 session_id = "session456" ,
93- chat_history = chat_history
113+ chat_history = chat_history ,
94114 )
95115 assert isinstance (result , ConversationMessage )
96116 assert result .role == "assistant"
97- assert result .content == "Mock response"
117+ assert result .content == "Mock response"
0 commit comments