From 3d6f54e431fc4d2e10b116856fe59374690865b7 Mon Sep 17 00:00:00 2001 From: Himanshu Joshi Date: Sun, 27 Sep 2026 00:55:28 +0530 Subject: [PATCH] test(streaming): exercise _simple_text_part empty sequence guards --- tests/local_testing/test_stream_chunk_builder.py | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/tests/local_testing/test_stream_chunk_builder.py b/tests/local_testing/test_stream_chunk_builder.py index 660586777fb..81c8ef2295a 100644 --- a/tests/local_testing/test_stream_chunk_builder.py +++ b/tests/local_testing/test_stream_chunk_builder.py @@ -902,6 +902,12 @@ def test_stream_chunk_builder_empty_choices_guard(): Test that stream_chunk_builder does not crash with IndexError when streaming chunks contain empty choices lists (e.g. trailing usage chunks). """ + from litellm.main import _simple_text_part + + # Direct unit test exercising empty-sequence guards in _simple_text_part + assert _simple_text_part([]) is None + assert _simple_text_part([{"delta": {}}]) == "" + chunks = [ {"id": "chat-test-1", "model": "gpt-4o", "choices": [{"index": 0, "delta": {"role": "assistant", "content": "Hello"}}]}, {"id": "chat-test-1", "model": "gpt-4o", "choices": [{"index": 0, "delta": {"content": " world"}}]}, @@ -911,3 +917,4 @@ def test_stream_chunk_builder_empty_choices_guard(): assert res is not None assert res["choices"][0]["message"]["content"] == "Hello world" +