Spaces:
Running
Running
File size: 2,183 Bytes
fd1472e |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 |
"""Tests for Magentic Agents domain support."""
from unittest.mock import patch
from src.agents.magentic_agents import (
create_hypothesis_agent,
create_judge_agent,
create_report_agent,
create_search_agent,
)
from src.config.domain import SEXUAL_HEALTH_CONFIG, ResearchDomain
class TestMagenticAgentsDomain:
@patch("src.agents.magentic_agents.ChatAgent")
@patch("src.agents.magentic_agents.OpenAIChatClient")
def test_create_search_agent_uses_domain(self, mock_client, mock_agent_cls):
create_search_agent(domain=ResearchDomain.SEXUAL_HEALTH)
# Check instructions or description passed to ChatAgent
call_kwargs = mock_agent_cls.call_args.kwargs
assert SEXUAL_HEALTH_CONFIG.search_agent_description in call_kwargs["description"]
# Ideally check instructions too if we update them
@patch("src.agents.magentic_agents.ChatAgent")
@patch("src.agents.magentic_agents.OpenAIChatClient")
def test_create_judge_agent_uses_domain(self, mock_client, mock_agent_cls):
create_judge_agent(domain=ResearchDomain.SEXUAL_HEALTH)
# Verify domain-specific judge system prompt is passed through
call_kwargs = mock_agent_cls.call_args.kwargs
assert SEXUAL_HEALTH_CONFIG.judge_system_prompt in call_kwargs["instructions"]
@patch("src.agents.magentic_agents.ChatAgent")
@patch("src.agents.magentic_agents.OpenAIChatClient")
def test_create_hypothesis_agent_uses_domain(self, mock_client, mock_agent_cls):
create_hypothesis_agent(domain=ResearchDomain.SEXUAL_HEALTH)
call_kwargs = mock_agent_cls.call_args.kwargs
assert SEXUAL_HEALTH_CONFIG.hypothesis_agent_description in call_kwargs["description"]
@patch("src.agents.magentic_agents.ChatAgent")
@patch("src.agents.magentic_agents.OpenAIChatClient")
def test_create_report_agent_uses_domain(self, mock_client, mock_agent_cls):
create_report_agent(domain=ResearchDomain.SEXUAL_HEALTH)
# Check instructions contains domain prompt
call_kwargs = mock_agent_cls.call_args.kwargs
assert SEXUAL_HEALTH_CONFIG.report_system_prompt in call_kwargs["instructions"]
|