test_summarization_middleware_full_workflow() — langchain Function Reference
Architecture documentation for the test_summarization_middleware_full_workflow() function in test_summarization.py from the langchain codebase.
Entity Profile
Dependency Diagram
graph TD 29c10084_138d_fd08_fc0c_410591309959["test_summarization_middleware_full_workflow()"] 1911a463_b67d_0301_5ef1_5c535dafc14a["test_summarization.py"] 29c10084_138d_fd08_fc0c_410591309959 -->|defined in| 1911a463_b67d_0301_5ef1_5c535dafc14a style 29c10084_138d_fd08_fc0c_410591309959 fill:#6366f1,stroke:#818cf8,color:#fff
Relationship Graph
Source Code
libs/langchain_v1/tests/unit_tests/agents/middleware/implementations/test_summarization.py lines 424–465
def test_summarization_middleware_full_workflow() -> None:
"""Test SummarizationMiddleware complete summarization workflow."""
with pytest.warns(DeprecationWarning, match="messages_to_keep is deprecated"):
# keep test for functionality
middleware = SummarizationMiddleware(
model=MockChatModel(), max_tokens_before_summary=1000, messages_to_keep=2
)
# Mock high token count to trigger summarization
def mock_token_counter(_: Iterable[MessageLikeRepresentation]) -> int:
return 1500 # Above threshold
middleware.token_counter = mock_token_counter
messages: list[AnyMessage] = [
HumanMessage(content="1"),
HumanMessage(content="2"),
HumanMessage(content="3"),
HumanMessage(content="4"),
HumanMessage(content="5"),
]
state = AgentState[Any](messages=messages)
result = middleware.before_model(state, Runtime())
assert result is not None
assert "messages" in result
assert len(result["messages"]) > 0
# Should have RemoveMessage for cleanup
assert isinstance(result["messages"][0], RemoveMessage)
assert result["messages"][0].id == REMOVE_ALL_MESSAGES
# Should have summary message
summary_message = None
for msg in result["messages"]:
if isinstance(msg, HumanMessage) and "summary of the conversation" in msg.content:
summary_message = msg
break
assert summary_message is not None
assert "Generated summary" in summary_message.content
Domain
Subdomains
Defined In
Source
Frequently Asked Questions
What does test_summarization_middleware_full_workflow() do?
test_summarization_middleware_full_workflow() is a function in the langchain codebase, defined in libs/langchain_v1/tests/unit_tests/agents/middleware/implementations/test_summarization.py.
Where is test_summarization_middleware_full_workflow() defined?
test_summarization_middleware_full_workflow() is defined in libs/langchain_v1/tests/unit_tests/agents/middleware/implementations/test_summarization.py at line 424.
Analyze Your Own Codebase
Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.
Try Supermodel Free