test_tool_retry_constant_backoff() — langchain Function Reference
Architecture documentation for the test_tool_retry_constant_backoff() function in test_tool_retry.py from the langchain codebase.
Entity Profile
Dependency Diagram
graph TD 4384798e_4f90_1a28_2d87_3407c5a22203["test_tool_retry_constant_backoff()"] c71b26df_821f_59ac_c7ef_3b96fcbe0d5b["test_tool_retry.py"] 4384798e_4f90_1a28_2d87_3407c5a22203 -->|defined in| c71b26df_821f_59ac_c7ef_3b96fcbe0d5b style 4384798e_4f90_1a28_2d87_3407c5a22203 fill:#6366f1,stroke:#818cf8,color:#fff
Relationship Graph
Source Code
libs/langchain_v1/tests/unit_tests/agents/middleware/implementations/test_tool_retry.py lines 591–633
def test_tool_retry_constant_backoff() -> None:
"""Test ToolRetryMiddlewarewith constant backoff (backoff_factor=0)."""
temp_fail = TemporaryFailureTool(fail_count=2)
@tool
def temp_failing_tool(value: str) -> str:
"""Tool that fails temporarily."""
return temp_fail(value)
model = FakeToolCallingModel(
tool_calls=[
[ToolCall(name="temp_failing_tool", args={"value": "test"}, id="1")],
[],
]
)
retry = ToolRetryMiddleware(
max_retries=2,
initial_delay=0.1,
backoff_factor=0.0, # Constant backoff
jitter=False,
)
agent = create_agent(
model=model,
tools=[temp_failing_tool],
middleware=[retry],
checkpointer=InMemorySaver(),
)
start_time = time.time()
result = agent.invoke(
{"messages": [HumanMessage("Use temp failing tool")]},
{"configurable": {"thread_id": "test"}},
)
elapsed = time.time() - start_time
tool_messages = [m for m in result["messages"] if isinstance(m, ToolMessage)]
assert len(tool_messages) == 1
# Expected delays: 0.1 + 0.1 = 0.2 seconds (constant)
assert elapsed >= 0.15, f"Expected at least 0.15s, got {elapsed}s"
assert elapsed < 0.5, f"Expected less than 0.5s (exponential would be longer), got {elapsed}s"
Domain
Subdomains
Source
Frequently Asked Questions
What does test_tool_retry_constant_backoff() do?
test_tool_retry_constant_backoff() 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_constant_backoff() defined?
test_tool_retry_constant_backoff() is defined in libs/langchain_v1/tests/unit_tests/agents/middleware/implementations/test_tool_retry.py at line 591.
Analyze Your Own Codebase
Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.
Try Supermodel Free