Home / Function/ test_on_model_call() — langchain Function Reference

test_on_model_call() — langchain Function Reference

Architecture documentation for the test_on_model_call() function in test_framework.py from the langchain codebase.

Entity Profile

Dependency Diagram

graph TD
  711fd03a_825d_4681_210f_5c0ab0a424d8["test_on_model_call()"]
  8310d669_2524_e019_e333_8473b50a4990["test_framework.py"]
  711fd03a_825d_4681_210f_5c0ab0a424d8 -->|defined in| 8310d669_2524_e019_e333_8473b50a4990
  style 711fd03a_825d_4681_210f_5c0ab0a424d8 fill:#6366f1,stroke:#818cf8,color:#fff

Relationship Graph

Source Code

libs/langchain_v1/tests/unit_tests/agents/middleware/core/test_framework.py lines 250–272

def test_on_model_call() -> None:
    class ModifyMiddleware(AgentMiddleware):
        def wrap_model_call(
            self,
            request: ModelRequest,
            handler: Callable[[ModelRequest], ModelResponse],
        ) -> ModelCallResult:
            request.messages.append(HumanMessage("remember to be nice!"))
            return handler(request)

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

    result = agent.invoke({"messages": [HumanMessage("Hello")]})
    assert result["messages"][0].content == "Hello"
    assert result["messages"][1].content == "remember to be nice!"
    assert (
        result["messages"][2].content == "You are a helpful assistant.-Hello-remember to be nice!"
    )

Domain

Subdomains

Frequently Asked Questions

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

Analyze Your Own Codebase

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

Try Supermodel Free