Files
OpenJarvis/tests/agents/test_executor_error_detail.py
T
Prathap PandGitHub c2756964a7 fix(channels): wire channel→agent handler and fix Telegram send pipeline (#94)
* fix(channels): wire channel→agent handler and fix Telegram send pipeline

* format code

* add supported tests
2026-03-20 18:35:18 -07:00

39 lines
1.4 KiB
Python

"""Tests for structured error_detail in executor traces."""
from openjarvis.agents.errors import EscalateError, FatalError, RetryableError
from openjarvis.agents.executor import AgentExecutor
from openjarvis.core.events import EventBus
def test_build_error_detail_fatal(tmp_path):
from openjarvis.agents.manager import AgentManager
mgr = AgentManager(db_path=str(tmp_path / "agents.db"))
exe = AgentExecutor(manager=mgr, event_bus=EventBus())
error = FatalError("401 unauthorized")
detail = exe._build_error_detail(error)
assert detail["error_type"] == "fatal"
assert "401 unauthorized" in detail["error_message"]
assert "API key" in detail["suggested_action"]
def test_build_error_detail_retryable(tmp_path):
from openjarvis.agents.manager import AgentManager
mgr = AgentManager(db_path=str(tmp_path / "agents.db"))
exe = AgentExecutor(manager=mgr, event_bus=EventBus())
error = RetryableError("connection timed out")
detail = exe._build_error_detail(error)
assert detail["error_type"] == "retryable"
assert "engine" in detail["suggested_action"].lower()
def test_build_error_detail_escalate(tmp_path):
from openjarvis.agents.manager import AgentManager
mgr = AgentManager(db_path=str(tmp_path / "agents.db"))
exe = AgentExecutor(manager=mgr, event_bus=EventBus())
error = EscalateError("agent needs help")
detail = exe._build_error_detail(error)
assert detail["error_type"] == "escalate"