Home / Function/ test_summarization_middleware_binary_search_edge_cases() — langchain Function Reference

test_summarization_middleware_binary_search_edge_cases() — langchain Function Reference

Architecture documentation for the test_summarization_middleware_binary_search_edge_cases() function in test_summarization.py from the langchain codebase.

Entity Profile

Dependency Diagram

graph TD
  751190a4_0e0e_8c0e_bccc_6bbebc0a0ff1["test_summarization_middleware_binary_search_edge_cases()"]
  1911a463_b67d_0301_5ef1_5c535dafc14a["test_summarization.py"]
  751190a4_0e0e_8c0e_bccc_6bbebc0a0ff1 -->|defined in| 1911a463_b67d_0301_5ef1_5c535dafc14a
  style 751190a4_0e0e_8c0e_bccc_6bbebc0a0ff1 fill:#6366f1,stroke:#818cf8,color:#fff

Relationship Graph

Source Code

libs/langchain_v1/tests/unit_tests/agents/middleware/implementations/test_summarization.py lines 753–780

def test_summarization_middleware_binary_search_edge_cases() -> None:
    """Test binary search in _find_token_based_cutoff with edge cases."""
    middleware = SummarizationMiddleware(
        model=MockChatModel(), trigger=("messages", 5), keep=("tokens", 100)
    )

    # Test with single message that's too large
    def token_counter_single_large(messages: Iterable[MessageLikeRepresentation]) -> int:
        return len(list(messages)) * 200

    middleware.token_counter = token_counter_single_large

    single_message: list[AnyMessage] = [HumanMessage(content="x" * 200)]
    cutoff = middleware._find_token_based_cutoff(single_message)
    assert cutoff == 0

    # Test with empty messages
    cutoff = middleware._find_token_based_cutoff([])
    assert cutoff == 0

    # Test when all messages fit within token budget
    def token_counter_small(messages: Iterable[MessageLikeRepresentation]) -> int:
        return len(list(messages)) * 10

    middleware.token_counter = token_counter_small
    messages: list[AnyMessage] = [HumanMessage(content=str(i)) for i in range(5)]
    cutoff = middleware._find_token_based_cutoff(messages)
    assert cutoff == 0

Domain

Subdomains

Frequently Asked Questions

What does test_summarization_middleware_binary_search_edge_cases() do?
test_summarization_middleware_binary_search_edge_cases() 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_binary_search_edge_cases() defined?
test_summarization_middleware_binary_search_edge_cases() is defined in libs/langchain_v1/tests/unit_tests/agents/middleware/implementations/test_summarization.py at line 753.

Analyze Your Own Codebase

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

Try Supermodel Free