diff --git a/tests/test_builder_prompt.py b/tests/test_builder_prompt.py index fa18188..760c479 100644 --- a/tests/test_builder_prompt.py +++ b/tests/test_builder_prompt.py @@ -17,7 +17,7 @@ from agent_builder.builder import ( from agent_builder.config import Settings from agent_builder.tools import A2A_PACK_MIN_VERSION, _strip_unsupported_pricing_fields from deepagents.backends import StateBackend -from agent import AgentBuilder, _build_failure_error +from agent import AgentBuilder, BUILDER_WALL_TIMEOUT_SECONDS, _build_failure_error class FakeWorkspace: @@ -104,6 +104,19 @@ class FakePlanLimitGraph: class AgentBuilderBuildTests(unittest.IsolatedAsyncioTestCase): + def test_class_metadata_and_skill_policy(self) -> None: + self.assertEqual(AgentBuilder.name, "agent-builder") + self.assertEqual(AgentBuilder.version, "0.1.10") + self.assertTrue(AgentBuilder.wants_cp_jwt) + self.assertEqual(AgentBuilder.pricing.price_per_call_usd, 0.10) + self.assertTrue(AgentBuilder.pricing.caller_pays_llm) + + spec = AgentBuilder._skills["build"] # type: ignore[attr-defined] + self.assertTrue(spec.stream) + self.assertEqual(spec.policy.timeout_seconds, BUILDER_WALL_TIMEOUT_SECONDS) + self.assertEqual(spec.policy.grant_outputs_prefix, "agents/{name}/") + self.assertEqual(spec.policy.grant_write_prefixes, ("agents/{name}/",)) + async def test_build_captures_nested_graph_state_and_deployed_url(self) -> None: ctx = FakeRunContext()