mirror of
https://github.com/meta-llama/llama-stack.git
synced 2025-12-12 12:06:04 +00:00
Add test to verify the three new file search streaming events are emitted correctly
This commit is contained in:
parent
9dcee00ef7
commit
5665ab6534
1 changed files with 45 additions and 0 deletions
|
|
@ -318,3 +318,48 @@ def test_response_file_search_filter_compound_or(compat_client, text_model_id, v
|
|||
# Verify we got at least one of the expected categories
|
||||
assert len(categories_found) > 0, "Should have found at least one marketing or sales file"
|
||||
assert categories_found.issubset({"marketing", "sales"}), f"Found unexpected categories: {categories_found}"
|
||||
|
||||
|
||||
def test_response_file_search_streaming_events(compat_client, text_model_id, vector_store_with_filtered_files):
|
||||
"""Test that file search emits proper streaming events (in_progress, searching, completed)."""
|
||||
tools = [
|
||||
{
|
||||
"type": "file_search",
|
||||
"vector_store_ids": [vector_store_with_filtered_files.id],
|
||||
}
|
||||
]
|
||||
|
||||
stream = compat_client.responses.create(
|
||||
model=text_model_id,
|
||||
input="What are the marketing updates?",
|
||||
tools=tools,
|
||||
stream=True,
|
||||
)
|
||||
|
||||
chunks = []
|
||||
for chunk in stream:
|
||||
chunks.append(chunk)
|
||||
|
||||
event_types = [chunk.type for chunk in chunks]
|
||||
|
||||
# Verify file search streaming events are present
|
||||
file_search_in_progress = [chunk for chunk in chunks if chunk.type == "response.file_search_call.in_progress"]
|
||||
file_search_searching = [chunk for chunk in chunks if chunk.type == "response.file_search_call.searching"]
|
||||
file_search_completed = [chunk for chunk in chunks if chunk.type == "response.file_search_call.completed"]
|
||||
|
||||
assert len(file_search_in_progress) > 0, (
|
||||
f"Expected response.file_search_call.in_progress events, got chunk types: {event_types}"
|
||||
)
|
||||
assert len(file_search_searching) > 0, (
|
||||
f"Expected response.file_search_call.searching events, got chunk types: {event_types}"
|
||||
)
|
||||
assert len(file_search_completed) > 0, (
|
||||
f"Expected response.file_search_call.completed events, got chunk types: {event_types}"
|
||||
)
|
||||
|
||||
# Verify final response has file search call
|
||||
final_chunk = chunks[-1]
|
||||
if hasattr(final_chunk, "response"):
|
||||
file_search_calls = [output for output in final_chunk.response.output if output.type == "file_search_call"]
|
||||
assert len(file_search_calls) > 0, "Expected at least one file_search_call in final response"
|
||||
assert file_search_calls[0].status == "completed"
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue