aegis / tests /unit /test_planner.py
jayc1978's picture
Upload initial Aegis project
8a87cbb verified
Raw History Blame Contribute Delete
1.34 kB
import pytest
from aegis.agents import PlannerAgent
from aegis.core import AgentContext, Task
@pytest.mark.asyncio
async def test_planner_returns_structured_plan() -> None:
planner = PlannerAgent()
context = AgentContext(
task=Task(
name="Build API",
description="Create and validate a small API endpoint.",
)
)
result = await planner.run(context)
assert result.success is True
assert result.agent_name == "planner"
assert result.output["task_name"] == "Build API"
assert len(result.output["steps"]) == 3
@pytest.mark.asyncio
async def test_planner_steps_have_sequential_ids() -> None:
planner = PlannerAgent()
context = AgentContext(
task=Task(
name="Validate repository",
description="Run repository validation checks.",
)
)
result = await planner.run(context)
step_ids = [step["id"] for step in result.output["steps"]]
assert step_ids == [1, 2, 3]
@pytest.mark.asyncio
async def test_planner_output_is_bounded() -> None:
planner = PlannerAgent()
context = AgentContext(
task=Task(
name="Small task",
description="Produce a concise execution plan.",
)
)
result = await planner.run(context)
assert len(result.output["steps"]) <= 3