Home / Function/ test_unknown_tool_raises_error() — langchain Function Reference

test_unknown_tool_raises_error() — langchain Function Reference

Architecture documentation for the test_unknown_tool_raises_error() function in test_tools.py from the langchain codebase.

Entity Profile

Dependency Diagram

graph TD
  1894826a_cc90_d6ba_4fd6_54d42247c2b5["test_unknown_tool_raises_error()"]
  5e05f5a6_3c9a_6b02_08a5_596bf1a6469a["test_tools.py"]
  1894826a_cc90_d6ba_4fd6_54d42247c2b5 -->|defined in| 5e05f5a6_3c9a_6b02_08a5_596bf1a6469a
  style 1894826a_cc90_d6ba_4fd6_54d42247c2b5 fill:#6366f1,stroke:#818cf8,color:#fff

Relationship Graph

Source Code

libs/langchain_v1/tests/unit_tests/agents/middleware/core/test_tools.py lines 126–159

def test_unknown_tool_raises_error() -> None:
    """Test that using an unknown tool in ModelRequest raises a clear error."""

    @tool
    def known_tool(value: str) -> str:
        """A known tool."""
        return "result"

    @tool
    def unknown_tool(value: str) -> str:
        """An unknown tool not passed to create_agent."""
        return "unknown"

    class BadMiddleware(AgentMiddleware):
        def wrap_model_call(
            self,
            request: ModelRequest,
            handler: Callable[[ModelRequest], ModelResponse],
        ) -> ModelCallResult:
            # Add an unknown tool
            return handler(request.override(tools=[*request.tools, unknown_tool]))

    agent = create_agent(
        model=FakeToolCallingModel(),
        tools=[known_tool],
        system_prompt="You are a helpful assistant.",
        middleware=[BadMiddleware()],
    )

    with pytest.raises(
        ValueError,
        match=r"(?s)Middleware added tools.*Unknown tools:.*unknown_tool",
    ):
        agent.invoke({"messages": [HumanMessage("Hello")]})

Domain

Subdomains

Frequently Asked Questions

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

Analyze Your Own Codebase

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

Try Supermodel Free