aegis / tests /unit /test_tool_runner.py
jayc1978's picture
Upload initial Aegis project
8a87cbb verified
Raw History Blame Contribute Delete
886 Bytes
import pytest
from aegis.core.tool_registry import ToolRegistry
from aegis.core.tool_runner import ToolRunner
class EchoTool:
name = "echo"
async def execute(self, **kwargs: object) -> object:
return kwargs
@pytest.mark.asyncio
async def test_tool_runner_executes_registered_tool() -> None:
registry = ToolRegistry([EchoTool()])
runner = ToolRunner(registry)
result = await runner.execute(
"echo",
message="hello",
value=42,
)
assert result == {
"message": "hello",
"value": 42,
}
@pytest.mark.asyncio
async def test_tool_runner_preserves_arguments() -> None:
registry = ToolRegistry([EchoTool()])
runner = ToolRunner(registry)
result = await runner.execute(
"echo",
alpha=1,
beta=2,
)
assert result == {
"alpha": 1,
"beta": 2,
}