test_tool_retry_async_failing_tool() — langchain Function Reference
Architecture documentation for the test_tool_retry_async_failing_tool() function in test_tool_retry.py from the langchain codebase.
Entity Profile
Dependency Diagram
graph TD cdd5849d_122a_a6b3_f3c4_622e106ddbdd["test_tool_retry_async_failing_tool()"] c71b26df_821f_59ac_c7ef_3b96fcbe0d5b["test_tool_retry.py"] cdd5849d_122a_a6b3_f3c4_622e106ddbdd -->|defined in| c71b26df_821f_59ac_c7ef_3b96fcbe0d5b style cdd5849d_122a_a6b3_f3c4_622e106ddbdd fill:#6366f1,stroke:#818cf8,color:#fff
Relationship Graph
Source Code
libs/langchain_v1/tests/unit_tests/agents/middleware/implementations/test_tool_retry.py lines 716–748
async def test_tool_retry_async_failing_tool() -> None:
"""Test ToolRetryMiddlewarewith async execution and failing tool."""
model = FakeToolCallingModel(
tool_calls=[
[ToolCall(name="failing_tool", args={"value": "test"}, id="1")],
[],
]
)
retry = ToolRetryMiddleware(
max_retries=2,
initial_delay=0.01,
jitter=False,
on_failure="continue",
)
agent = create_agent(
model=model,
tools=[failing_tool],
middleware=[retry],
checkpointer=InMemorySaver(),
)
result = await agent.ainvoke(
{"messages": [HumanMessage("Use failing tool")]},
{"configurable": {"thread_id": "test"}},
)
tool_messages = [m for m in result["messages"] if isinstance(m, ToolMessage)]
assert len(tool_messages) == 1
assert "failing_tool" in tool_messages[0].content
assert "3 attempts" in tool_messages[0].content
assert tool_messages[0].status == "error"
Domain
Subdomains
Source
Frequently Asked Questions
What does test_tool_retry_async_failing_tool() do?
test_tool_retry_async_failing_tool() is a function in the langchain codebase, defined in libs/langchain_v1/tests/unit_tests/agents/middleware/implementations/test_tool_retry.py.
Where is test_tool_retry_async_failing_tool() defined?
test_tool_retry_async_failing_tool() is defined in libs/langchain_v1/tests/unit_tests/agents/middleware/implementations/test_tool_retry.py at line 716.
Analyze Your Own Codebase
Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.
Try Supermodel Free