Home / Function/ test_two_handlers_basic_composition() — langchain Function Reference

test_two_handlers_basic_composition() — langchain Function Reference

Architecture documentation for the test_two_handlers_basic_composition() function in test_composition.py from the langchain codebase.

Entity Profile

Dependency Diagram

graph TD
  133909a3_e91f_1a25_c8fd_6f0bc10952ff["test_two_handlers_basic_composition()"]
  f1e766c6_5a64_9e6c_f2a8_d41c64f6f142["TestChainModelCallHandlers"]
  133909a3_e91f_1a25_c8fd_6f0bc10952ff -->|defined in| f1e766c6_5a64_9e6c_f2a8_d41c64f6f142
  3988450e_19ed_2280_0a85_e9520f7f556b["create_test_request()"]
  133909a3_e91f_1a25_c8fd_6f0bc10952ff -->|calls| 3988450e_19ed_2280_0a85_e9520f7f556b
  1cdbb163_cfa8_588a_643a_640bbf32247f["create_mock_base_handler()"]
  133909a3_e91f_1a25_c8fd_6f0bc10952ff -->|calls| 1cdbb163_cfa8_588a_643a_640bbf32247f
  style 133909a3_e91f_1a25_c8fd_6f0bc10952ff fill:#6366f1,stroke:#818cf8,color:#fff

Relationship Graph

Source Code

libs/langchain_v1/tests/unit_tests/agents/middleware/core/test_composition.py lines 61–94

    def test_two_handlers_basic_composition(self) -> None:
        """Test basic composition of two handlers."""
        execution_order = []

        def outer(
            request: ModelRequest, handler: Callable[[ModelRequest], ModelResponse]
        ) -> ModelResponse:
            execution_order.append("outer-before")
            result = handler(request)
            execution_order.append("outer-after")
            return result

        def inner(
            request: ModelRequest, handler: Callable[[ModelRequest], ModelResponse]
        ) -> ModelResponse:
            execution_order.append("inner-before")
            result = handler(request)
            execution_order.append("inner-after")
            return result

        composed = _chain_model_call_handlers([outer, inner])
        assert composed is not None

        result = composed(create_test_request(), create_mock_base_handler())

        assert execution_order == [
            "outer-before",
            "inner-before",
            "inner-after",
            "outer-after",
        ]
        # Outermost result is always _ComposedExtendedModelResponse
        assert isinstance(result, _ComposedExtendedModelResponse)
        assert result.model_response.result[0].content == "test"

Domain

Subdomains

Frequently Asked Questions

What does test_two_handlers_basic_composition() do?
test_two_handlers_basic_composition() is a function in the langchain codebase, defined in libs/langchain_v1/tests/unit_tests/agents/middleware/core/test_composition.py.
Where is test_two_handlers_basic_composition() defined?
test_two_handlers_basic_composition() is defined in libs/langchain_v1/tests/unit_tests/agents/middleware/core/test_composition.py at line 61.
What does test_two_handlers_basic_composition() call?
test_two_handlers_basic_composition() calls 2 function(s): create_mock_base_handler, create_test_request.

Analyze Your Own Codebase

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

Try Supermodel Free