Home / Function/ test_wrap_tool_call_access_state() — langchain Function Reference

test_wrap_tool_call_access_state() — langchain Function Reference

Architecture documentation for the test_wrap_tool_call_access_state() function in test_wrap_tool_call.py from the langchain codebase.

Entity Profile

Dependency Diagram

graph TD
  db34a579_6ed0_81ee_460d_07281bd62048["test_wrap_tool_call_access_state()"]
  e783c6bd_e3d7_7d3b_e64d_d062c5c12013["test_wrap_tool_call.py"]
  db34a579_6ed0_81ee_460d_07281bd62048 -->|defined in| e783c6bd_e3d7_7d3b_e64d_d062c5c12013
  style db34a579_6ed0_81ee_460d_07281bd62048 fill:#6366f1,stroke:#818cf8,color:#fff

Relationship Graph

Source Code

libs/langchain_v1/tests/unit_tests/agents/middleware/core/test_wrap_tool_call.py lines 152–187

def test_wrap_tool_call_access_state() -> None:
    """Test accessing agent state from wrap_tool_call decorator."""
    state_data = []

    @wrap_tool_call
    def access_state(
        request: ToolCallRequest, handler: Callable[[ToolCallRequest], ToolMessage | Command[Any]]
    ) -> ToolMessage | Command[Any]:
        # Access state from request
        if request.state is not None:
            messages = request.state.get("messages", [])
            state_data.append(len(messages))
        return handler(request)

    model = FakeToolCallingModel(
        tool_calls=[
            [ToolCall(name="search", args={"query": "test"}, id="1")],
            [],
        ]
    )

    agent = create_agent(
        model=model,
        tools=[search],
        middleware=[access_state],
        checkpointer=InMemorySaver(),
    )

    agent.invoke(
        {"messages": [HumanMessage("Search")]},
        {"configurable": {"thread_id": "test"}},
    )

    # Middleware should have accessed state
    assert len(state_data) >= 1
    assert state_data[0] > 0  # Should have at least the initial message

Domain

Subdomains

Frequently Asked Questions

What does test_wrap_tool_call_access_state() do?
test_wrap_tool_call_access_state() is a function in the langchain codebase, defined in libs/langchain_v1/tests/unit_tests/agents/middleware/core/test_wrap_tool_call.py.
Where is test_wrap_tool_call_access_state() defined?
test_wrap_tool_call_access_state() is defined in libs/langchain_v1/tests/unit_tests/agents/middleware/core/test_wrap_tool_call.py at line 152.

Analyze Your Own Codebase

Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.

Try Supermodel Free