Home / Function/ test_metadata_merge_across_updates() — langchain Function Reference

test_metadata_merge_across_updates() — langchain Function Reference

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

Entity Profile

Dependency Diagram

graph TD
  b147dfe9_98ea_072b_8a74_30764c113724["test_metadata_merge_across_updates()"]
  a2f43596_585a_4611_17e0_6f5fc04de10e["TestMetadataMerging"]
  b147dfe9_98ea_072b_8a74_30764c113724 -->|defined in| a2f43596_585a_4611_17e0_6f5fc04de10e
  style b147dfe9_98ea_072b_8a74_30764c113724 fill:#6366f1,stroke:#818cf8,color:#fff

Relationship Graph

Source Code

libs/langchain_v1/tests/unit_tests/agents/test_system_message.py lines 705–752

    def test_metadata_merge_across_updates(
        self,
        metadata_type: str,
        initial_metadata: dict[str, Any],
        update_metadata: dict[str, Any],
        expected_result: dict[str, Any],
    ) -> None:
        """Test that metadata merges correctly when updating system message."""
        base_message = SystemMessage(
            content="Base",
            **{metadata_type: initial_metadata},
        )

        def update_middleware(
            request: ModelRequest, handler: Callable[[ModelRequest], ModelResponse]
        ) -> ModelResponse:
            """Update system message, merging metadata."""
            current_metadata = getattr(request.system_message, metadata_type)
            new_metadata = {**current_metadata, **update_metadata}

            new_request = request.override(
                system_message=SystemMessage(content="Updated", **{metadata_type: new_metadata})
            )
            return handler(new_request)

        model = GenericFakeChatModel(messages=iter([AIMessage(content="response")]))
        request = ModelRequest(
            model=model,
            system_message=base_message,
            messages=[],
            tool_choice=None,
            tools=[],
            response_format=None,
            state=AgentState(messages=[]),
            runtime=Runtime(),
        )

        captured_request = None

        def mock_handler(req: ModelRequest) -> ModelResponse:
            nonlocal captured_request
            captured_request = req
            return ModelResponse(result=[AIMessage(content="response")])

        update_middleware(request, mock_handler)

        assert captured_request is not None
        assert getattr(captured_request.system_message, metadata_type) == expected_result

Domain

Subdomains

Frequently Asked Questions

What does test_metadata_merge_across_updates() do?
test_metadata_merge_across_updates() is a function in the langchain codebase, defined in libs/langchain_v1/tests/unit_tests/agents/test_system_message.py.
Where is test_metadata_merge_across_updates() defined?
test_metadata_merge_across_updates() is defined in libs/langchain_v1/tests/unit_tests/agents/test_system_message.py at line 705.

Analyze Your Own Codebase

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

Try Supermodel Free