chore: remove belief collector and small tweaks
This commit is contained in:
@@ -478,8 +478,7 @@ async def test_stop_closes_sockets():
|
||||
|
||||
pubsocket.close.assert_called_once()
|
||||
subsocket.close.assert_called_once()
|
||||
# Note: repsocket is not closed in stop() method, but you might want to add it
|
||||
# repsocket.close.assert_called_once()
|
||||
repsocket.close.assert_called_once()
|
||||
|
||||
|
||||
@pytest.mark.asyncio
|
||||
|
||||
@@ -45,12 +45,12 @@ async def test_setup_no_asl(mock_agentspeak_env, agent):
|
||||
|
||||
|
||||
@pytest.mark.asyncio
|
||||
async def test_handle_belief_collector_message(agent, mock_settings):
|
||||
async def test_handle_belief_message(agent, mock_settings):
|
||||
"""Test that incoming beliefs are added to the BDI agent"""
|
||||
beliefs = [Belief(name="user_said", arguments=["Hello"])]
|
||||
msg = InternalMessage(
|
||||
to="bdi_agent",
|
||||
sender=mock_settings.agent_settings.bdi_belief_collector_name,
|
||||
sender=mock_settings.agent_settings.text_belief_extractor_name,
|
||||
body=BeliefMessage(create=beliefs).model_dump_json(),
|
||||
thread="beliefs",
|
||||
)
|
||||
@@ -82,7 +82,7 @@ async def test_handle_delete_belief_message(agent, mock_settings):
|
||||
|
||||
msg = InternalMessage(
|
||||
to="bdi_agent",
|
||||
sender=mock_settings.agent_settings.bdi_belief_collector_name,
|
||||
sender=mock_settings.agent_settings.text_belief_extractor_name,
|
||||
body=BeliefMessage(delete=beliefs).model_dump_json(),
|
||||
thread="beliefs",
|
||||
)
|
||||
@@ -104,11 +104,11 @@ async def test_handle_delete_belief_message(agent, mock_settings):
|
||||
|
||||
|
||||
@pytest.mark.asyncio
|
||||
async def test_incorrect_belief_collector_message(agent, mock_settings):
|
||||
async def test_incorrect_belief_message(agent, mock_settings):
|
||||
"""Test that incorrect message format triggers an exception."""
|
||||
msg = InternalMessage(
|
||||
to="bdi_agent",
|
||||
sender=mock_settings.agent_settings.bdi_belief_collector_name,
|
||||
sender=mock_settings.agent_settings.text_belief_extractor_name,
|
||||
body=json.dumps({"bad_format": "bad_format"}),
|
||||
thread="beliefs",
|
||||
)
|
||||
|
||||
@@ -359,6 +359,30 @@ async def test_simulated_real_turn_remove_belief(agent, llm, sample_program):
|
||||
assert any(b.name == "no_more_booze" for b in agent._current_beliefs.false)
|
||||
|
||||
|
||||
@pytest.mark.asyncio
|
||||
async def test_infer_goal_completions_sends_beliefs(agent, llm):
|
||||
"""Test that inferred goal completions are sent to the BDI core."""
|
||||
goal = BaseGoal(
|
||||
id=uuid.uuid4(), name="Say Hello", description="The user said hello", can_fail=True
|
||||
)
|
||||
agent.goal_inferrer.goals = {goal}
|
||||
|
||||
# Mock goal inference: goal is achieved
|
||||
llm.query = AsyncMock(return_value=True)
|
||||
|
||||
await agent._infer_goal_completions()
|
||||
|
||||
# Should send belief change to BDI core
|
||||
agent.send.assert_awaited_once()
|
||||
sent: InternalMessage = agent.send.call_args.args[0]
|
||||
assert sent.to == settings.agent_settings.bdi_core_name
|
||||
assert sent.thread == "beliefs"
|
||||
|
||||
parsed = BeliefMessage.model_validate_json(sent.body)
|
||||
assert len(parsed.create) == 1
|
||||
assert parsed.create[0].name == "achieved_say_hello"
|
||||
|
||||
|
||||
@pytest.mark.asyncio
|
||||
async def test_llm_failure_handling(agent, llm, sample_program):
|
||||
"""
|
||||
|
||||
@@ -55,4 +55,6 @@ def test_get_decode_options():
|
||||
assert isinstance(options["sample_len"], int)
|
||||
|
||||
# When disabled, it should not limit output length based on input size
|
||||
assert "sample_rate" not in options
|
||||
recognizer = OpenAIWhisperSpeechRecognizer(limit_output_length=False)
|
||||
options = recognizer._get_decode_options(audio)
|
||||
assert "sample_len" not in options
|
||||
|
||||
@@ -60,7 +60,6 @@ async def test_handle_message_unknown_command(agent):
|
||||
|
||||
await agent.handle_message(msg)
|
||||
|
||||
agent.logger.warning.assert_called()
|
||||
agent._paused.clear.assert_not_called()
|
||||
agent._paused.set.assert_not_called()
|
||||
|
||||
|
||||
@@ -25,7 +25,6 @@ def mock_settings():
|
||||
mock.zmq_settings.internal_sub_address = "tcp://localhost:5561"
|
||||
mock.zmq_settings.ri_command_address = "tcp://localhost:0000"
|
||||
mock.agent_settings.bdi_core_name = "bdi_core_agent"
|
||||
mock.agent_settings.bdi_belief_collector_name = "belief_collector_agent"
|
||||
mock.agent_settings.llm_name = "llm_agent"
|
||||
mock.agent_settings.robot_speech_name = "robot_speech_agent"
|
||||
mock.agent_settings.transcription_name = "transcription_agent"
|
||||
|
||||
Reference in New Issue
Block a user