Home / Class/ TestGetBufferString Class — langchain Architecture

TestGetBufferString Class — langchain Architecture

Architecture documentation for the TestGetBufferString class in test_messages.py from the langchain codebase.

Entity Profile

Dependency Diagram

graph TD
  8f326e31_2ed9_ea66_1073_cde9d14958a4["TestGetBufferString"]
  1c821c4f_25a2_9606_a15f_b3df054105ac["test_messages.py"]
  8f326e31_2ed9_ea66_1073_cde9d14958a4 -->|defined in| 1c821c4f_25a2_9606_a15f_b3df054105ac
  c9336113_6793_6232_1a36_da3a972ff367["test_empty_input()"]
  8f326e31_2ed9_ea66_1073_cde9d14958a4 -->|method| c9336113_6793_6232_1a36_da3a972ff367
  b4ee27d5_6dc6_f96d_055d_41e6f66b26ad["test_valid_single_message()"]
  8f326e31_2ed9_ea66_1073_cde9d14958a4 -->|method| b4ee27d5_6dc6_f96d_055d_41e6f66b26ad
  0554146a_ab60_7a5b_a598_c9ed2cba5eb2["test_custom_human_prefix()"]
  8f326e31_2ed9_ea66_1073_cde9d14958a4 -->|method| 0554146a_ab60_7a5b_a598_c9ed2cba5eb2
  a7c71150_eef3_54af_b66e_bb381d3faa61["test_custom_ai_prefix()"]
  8f326e31_2ed9_ea66_1073_cde9d14958a4 -->|method| a7c71150_eef3_54af_b66e_bb381d3faa61
  f52b2491_72b9_3745_5a40_023f53fe24b5["test_multiple_msg()"]
  8f326e31_2ed9_ea66_1073_cde9d14958a4 -->|method| f52b2491_72b9_3745_5a40_023f53fe24b5
  3f453015_bd90_7eeb_ef30_c57edde066ec["test_custom_message_separator()"]
  8f326e31_2ed9_ea66_1073_cde9d14958a4 -->|method| 3f453015_bd90_7eeb_ef30_c57edde066ec

Relationship Graph

Source Code

libs/core/tests/unit_tests/test_messages.py lines 332–379

class TestGetBufferString:
    _HUMAN_MSG = HumanMessage(content="human")
    _AI_MSG = AIMessage(content="ai")

    def test_empty_input(self) -> None:
        assert not get_buffer_string([])

    def test_valid_single_message(self) -> None:
        expected_output = "Human: human"
        assert get_buffer_string([self._HUMAN_MSG]) == expected_output

    def test_custom_human_prefix(self) -> None:
        expected_output = "H: human"
        assert get_buffer_string([self._HUMAN_MSG], human_prefix="H") == expected_output

    def test_custom_ai_prefix(self) -> None:
        expected_output = "A: ai"
        assert get_buffer_string([self._AI_MSG], ai_prefix="A") == expected_output

    def test_multiple_msg(self) -> None:
        msgs = [
            self._HUMAN_MSG,
            self._AI_MSG,
            SystemMessage(content="system"),
            FunctionMessage(name="func", content="function"),
            ToolMessage(tool_call_id="tool_id", content="tool"),
            ChatMessage(role="Chat", content="chat"),
            AIMessage(content="tool"),
        ]
        expected_output = (
            "Human: human\n"
            "AI: ai\n"
            "System: system\n"
            "Function: function\n"
            "Tool: tool\n"
            "Chat: chat\n"
            "AI: tool"
        )

        assert get_buffer_string(msgs) == expected_output

    def test_custom_message_separator(self) -> None:
        msgs = [
            self._HUMAN_MSG,
            self._AI_MSG,
        ]
        expected_output = "Human: human\n\nAI: ai"
        assert get_buffer_string(msgs, message_separator="\n\n") == expected_output

Frequently Asked Questions

What is the TestGetBufferString class?
TestGetBufferString is a class in the langchain codebase, defined in libs/core/tests/unit_tests/test_messages.py.
Where is TestGetBufferString defined?
TestGetBufferString is defined in libs/core/tests/unit_tests/test_messages.py at line 332.

Analyze Your Own Codebase

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

Try Supermodel Free