test: add unit tests to BeliefCollector

ref: N25B-197
This commit is contained in:
2025-10-22 14:51:20 +02:00
parent cd0b3ee9a0
commit e057cf3003
4 changed files with 239 additions and 14 deletions

View File

@@ -5,7 +5,7 @@ from spade_bdi.bdi import BDIAgent
from control_backend.agents.bdi.behaviours.belief_setter import BeliefSetter
class BDICore(BDIAgent):
class BDICoreAgent(BDIAgent):
"""
This is the Brain agent that does the belief inference with AgentSpeak.
This is a continous process that happens automatically in the background.

View File

@@ -12,7 +12,7 @@ from spade.behaviour import OneShotBehaviour
import zmq
# Internal imports
from control_backend.agents.bdi.bdi_core import BDICore
from control_backend.agents.bdi.bdi_core import BDICoreAgent
from control_backend.api.v1.router import api_router
from control_backend.core.config import AgentSettings, settings
from control_backend.core.zmq_context import context
@@ -32,20 +32,9 @@ async def lifespan(app: FastAPI):
logger.info("Internal publishing socket bound to %s", internal_comm_socket)
# Initiate agents
bdi_core = BDICore(settings.agent_settings.bdi_core_agent_name + '@' + settings.agent_settings.host, settings.agent_settings.bdi_core_agent_name, "src/control_backend/agents/bdi/rules.asl")
bdi_core = BDICoreAgent(settings.agent_settings.bdi_core_agent_name + '@' + settings.agent_settings.host, settings.agent_settings.bdi_core_agent_name, "src/control_backend/agents/bdi/rules.asl")
await bdi_core.start()
# -----------TEMORARY SECTION-------------
belief_collector = Agent(settings.agent_settings.belief_collector_agent_name + '@' + settings.agent_settings.host, settings.agent_settings.belief_collector_agent_name)
await belief_collector.start()
class SendMessageBehaviour(OneShotBehaviour):
async def run(self):
await self.send(Message(bdi_core.jid, belief_collector.jid, json.dumps({"user_said": [["Hello World!"]]}), "beliefs"))
belief_collector.add_behaviour(SendMessageBehaviour())
# -----------TEMORARY SECTION-------------
yield
logger.info("%s shutting down.", app.title)