Home / Function/ test_replaces_tool_with_claude_descriptor() — langchain Function Reference

test_replaces_tool_with_claude_descriptor() — langchain Function Reference

Architecture documentation for the test_replaces_tool_with_claude_descriptor() function in test_bash.py from the langchain codebase.

Entity Profile

Dependency Diagram

graph TD
  ff98f549_011f_8ee0_1eba_8bf90e339552["test_replaces_tool_with_claude_descriptor()"]
  19d3e6c3_6baa_fc3d_b762_dd47791fe238["test_bash.py"]
  ff98f549_011f_8ee0_1eba_8bf90e339552 -->|defined in| 19d3e6c3_6baa_fc3d_b762_dd47791fe238
  style ff98f549_011f_8ee0_1eba_8bf90e339552 fill:#6366f1,stroke:#818cf8,color:#fff

Relationship Graph

Source Code

libs/partners/anthropic/tests/unit_tests/middleware/test_bash.py lines 26–61

def test_replaces_tool_with_claude_descriptor() -> None:
    """Test wrap_model_call replaces bash tool with Claude's bash descriptor."""
    from langchain.agents.middleware.types import ModelRequest

    middleware = ClaudeBashToolMiddleware()

    # Create a mock request with the bash tool (inherited from parent)
    bash_tool = middleware.tools[0]
    request = ModelRequest(
        model=MagicMock(),
        system_prompt=None,
        messages=[],
        tool_choice=None,
        tools=[bash_tool],
        response_format=None,
        state={"messages": []},
        runtime=MagicMock(),
    )

    # Mock handler that captures the modified request
    captured_request = None

    def handler(req: ModelRequest) -> MagicMock:
        nonlocal captured_request
        captured_request = req
        return MagicMock()

    middleware.wrap_model_call(request, handler)

    # The bash tool should be replaced with Claude's native bash descriptor
    assert captured_request is not None
    assert len(captured_request.tools) == 1
    assert captured_request.tools[0] == {
        "type": "bash_20250124",
        "name": "bash",
    }

Domain

Subdomains

Frequently Asked Questions

What does test_replaces_tool_with_claude_descriptor() do?
test_replaces_tool_with_claude_descriptor() is a function in the langchain codebase, defined in libs/partners/anthropic/tests/unit_tests/middleware/test_bash.py.
Where is test_replaces_tool_with_claude_descriptor() defined?
test_replaces_tool_with_claude_descriptor() is defined in libs/partners/anthropic/tests/unit_tests/middleware/test_bash.py at line 26.

Analyze Your Own Codebase

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

Try Supermodel Free