Home / Function/ test_middleware_can_switch_between_formats() — langchain Function Reference

test_middleware_can_switch_between_formats() — langchain Function Reference

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

Entity Profile

Dependency Diagram

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

Relationship Graph

Source Code

libs/langchain_v1/tests/unit_tests/agents/test_system_message.py lines 965–991

    def test_middleware_can_switch_between_formats(
        self, initial_value: SystemMessage | str | None
    ) -> None:
        """Test middleware can work with SystemMessage, string, or None."""

        def flexible_middleware(request: ModelRequest) -> ModelRequest:
            """Middleware that works with various formats."""
            if request.system_message:
                new_message = SystemMessage(content=request.system_message.text + " [modified]")
                return request.override(system_message=new_message)
            new_message = SystemMessage(content="[created]")
            return request.override(system_message=new_message)

        if isinstance(initial_value, SystemMessage):
            request = _make_request(system_message=initial_value)
            expected_text = "Hello [modified]"
        elif isinstance(initial_value, str):
            request = _make_request(system_prompt=initial_value)
            expected_text = "Hello [modified]"
        else:  # None
            request = _make_request(system_message=None)
            expected_text = "[created]"

        result = flexible_middleware(request)
        assert result.system_message is not None
        assert len(result.system_message.content_blocks) == 1
        assert result.system_message.content_blocks[0].get("text") == expected_text

Domain

Subdomains

Frequently Asked Questions

What does test_middleware_can_switch_between_formats() do?
test_middleware_can_switch_between_formats() is a function in the langchain codebase, defined in libs/langchain_v1/tests/unit_tests/agents/test_system_message.py.
Where is test_middleware_can_switch_between_formats() defined?
test_middleware_can_switch_between_formats() is defined in libs/langchain_v1/tests/unit_tests/agents/test_system_message.py at line 965.
What does test_middleware_can_switch_between_formats() call?
test_middleware_can_switch_between_formats() 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