Home / Function/ test_multiple_middleware_can_modify_system_message() — langchain Function Reference

test_multiple_middleware_can_modify_system_message() — langchain Function Reference

Architecture documentation for the test_multiple_middleware_can_modify_system_message() function in test_system_message.py from the langchain codebase.

Entity Profile

Dependency Diagram

graph TD
  57030076_d52c_2940_d236_8eba32d0da84["test_multiple_middleware_can_modify_system_message()"]
  6469df6a_13d0_be79_9859_f2030c6dde8c["TestSystemMessageMiddlewareIntegration"]
  57030076_d52c_2940_d236_8eba32d0da84 -->|defined in| 6469df6a_13d0_be79_9859_f2030c6dde8c
  56f7d1ae_98db_01a6_dc7e_786fe86dd0c4["_make_request()"]
  57030076_d52c_2940_d236_8eba32d0da84 -->|calls| 56f7d1ae_98db_01a6_dc7e_786fe86dd0c4
  style 57030076_d52c_2940_d236_8eba32d0da84 fill:#6366f1,stroke:#818cf8,color:#fff

Relationship Graph

Source Code

libs/langchain_v1/tests/unit_tests/agents/test_system_message.py lines 863–908

    def test_multiple_middleware_can_modify_system_message(self) -> None:
        """Test that multiple middleware can modify system message in sequence."""

        def first_middleware(request: ModelRequest) -> ModelRequest:
            """First middleware adds base system message."""
            new_message = SystemMessage(
                content="You are an assistant.",
                additional_kwargs={"middleware_1": "applied"},
            )
            return request.override(system_message=new_message)

        def second_middleware(request: ModelRequest) -> ModelRequest:
            """Second middleware appends to system message."""
            assert request.system_message is not None
            current_content = request.system_message.text
            new_content = current_content + " Be helpful."

            merged_kwargs = {
                **request.system_message.additional_kwargs,
                "middleware_2": "applied",
            }

            new_message = SystemMessage(
                content=new_content,
                additional_kwargs=merged_kwargs,
            )
            return request.override(system_message=new_message)

        request = _make_request(system_message=None)

        # Apply middleware in sequence
        request = first_middleware(request)
        assert request.system_message is not None
        assert len(request.system_message.content_blocks) == 1
        assert request.system_message.content_blocks[0].get("text") == "You are an assistant."
        assert request.system_message.additional_kwargs["middleware_1"] == "applied"

        request = second_middleware(request)
        assert request.system_message is not None
        assert len(request.system_message.content_blocks) == 1
        assert (
            request.system_message.content_blocks[0].get("text")
            == "You are an assistant. Be helpful."
        )
        assert request.system_message.additional_kwargs["middleware_1"] == "applied"
        assert request.system_message.additional_kwargs["middleware_2"] == "applied"

Domain

Subdomains

Frequently Asked Questions

What does test_multiple_middleware_can_modify_system_message() do?
test_multiple_middleware_can_modify_system_message() is a function in the langchain codebase, defined in libs/langchain_v1/tests/unit_tests/agents/test_system_message.py.
Where is test_multiple_middleware_can_modify_system_message() defined?
test_multiple_middleware_can_modify_system_message() is defined in libs/langchain_v1/tests/unit_tests/agents/test_system_message.py at line 863.
What does test_multiple_middleware_can_modify_system_message() call?
test_multiple_middleware_can_modify_system_message() calls 1 function(s): _make_request.

Analyze Your Own Codebase

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

Try Supermodel Free