poc/diff-for-v2

This commit is contained in:
Sydney Runkle
2026-03-03 14:16:28 -08:00
parent 1587713786
commit 6aa74a76b7
3 changed files with 34 additions and 20 deletions

View File

@@ -97,8 +97,7 @@ def test_create_agent_invoke(
thread1 = {"configurable": {"thread_id": "1"}}
result = agent_one.invoke({"messages": ["hello"]}, thread1)
# v2 stream format returns GraphOutput; unwrap to get the dict
assert isinstance(result, GraphOutput)
result_dict = result.value
result_dict = result.value if isinstance(result, GraphOutput) else result
assert result_dict == {
"messages": [
_AnyIdHumanMessage(content="hello"),
@@ -201,8 +200,7 @@ def test_create_agent_jump(
thread1 = {"configurable": {"thread_id": "1"}}
result = agent_one.invoke({"messages": []}, thread1)
assert isinstance(result, GraphOutput)
result_dict = result.value
result_dict = result.value if isinstance(result, GraphOutput) else result
assert result_dict == {"messages": []}
assert calls == ["NoopSeven.before_model", "NoopEight.before_model"]
@@ -701,8 +699,7 @@ async def test_create_agent_async_jump() -> None:
result = await agent.ainvoke({"messages": []})
assert isinstance(result, GraphOutput)
result_dict = result.value
result_dict = result.value if isinstance(result, GraphOutput) else result
assert result_dict == {"messages": []}
assert calls == ["AsyncMiddlewareOne.abefore_model", "AsyncMiddlewareTwo.abefore_model"]

View File

@@ -630,8 +630,7 @@ class TestComposition:
result = agent.invoke({"messages": [HumanMessage("Hi")]})
assert isinstance(result, GraphOutput)
result_dict = result.value
result_dict = result.value if isinstance(result, GraphOutput) else result
assert result_dict.get("structured_response") == {"key": "value"}
messages = result_dict["messages"]
assert len(messages) == 2

View File

@@ -118,8 +118,11 @@ def test_lc_agent_name_in_stream_metadata() -> None:
{"messages": [HumanMessage("Hello")]},
stream_mode="messages",
):
assert event["type"] == "messages"
_chunk, metadata = event["data"]
if isinstance(event, dict):
assert event["type"] == "messages"
_chunk, metadata = event["data"]
else:
_chunk, metadata = event
if "lc_agent_name" in metadata:
metadata_with_agent_name.append(metadata["lc_agent_name"])
@@ -138,8 +141,11 @@ def test_lc_agent_name_not_in_stream_metadata_when_name_not_provided() -> None:
{"messages": [HumanMessage("Hello")]},
stream_mode="messages",
):
assert event["type"] == "messages"
_chunk, metadata = event["data"]
if isinstance(event, dict):
assert event["type"] == "messages"
_chunk, metadata = event["data"]
else:
_chunk, metadata = event
assert "lc_agent_name" not in metadata
@@ -158,8 +164,11 @@ def test_lc_agent_name_in_stream_metadata_multiple_iterations() -> None:
{"messages": [HumanMessage("Call a tool")]},
stream_mode="messages",
):
assert event["type"] == "messages"
_chunk, metadata = event["data"]
if isinstance(event, dict):
assert event["type"] == "messages"
_chunk, metadata = event["data"]
else:
_chunk, metadata = event
if "lc_agent_name" in metadata:
metadata_with_agent_name.append(metadata["lc_agent_name"])
@@ -181,8 +190,11 @@ async def test_lc_agent_name_in_astream_metadata() -> None:
{"messages": [HumanMessage("Hello async")]},
stream_mode="messages",
):
assert event["type"] == "messages"
_chunk, metadata = event["data"]
if isinstance(event, dict):
assert event["type"] == "messages"
_chunk, metadata = event["data"]
else:
_chunk, metadata = event
if "lc_agent_name" in metadata:
metadata_with_agent_name.append(metadata["lc_agent_name"])
@@ -201,8 +213,11 @@ async def test_lc_agent_name_not_in_astream_metadata_when_name_not_provided() ->
{"messages": [HumanMessage("Hello async")]},
stream_mode="messages",
):
assert event["type"] == "messages"
_chunk, metadata = event["data"]
if isinstance(event, dict):
assert event["type"] == "messages"
_chunk, metadata = event["data"]
else:
_chunk, metadata = event
assert "lc_agent_name" not in metadata
@@ -221,8 +236,11 @@ async def test_lc_agent_name_in_astream_metadata_multiple_iterations() -> None:
{"messages": [HumanMessage("Call tool async")]},
stream_mode="messages",
):
assert event["type"] == "messages"
_chunk, metadata = event["data"]
if isinstance(event, dict):
assert event["type"] == "messages"
_chunk, metadata = event["data"]
else:
_chunk, metadata = event
if "lc_agent_name" in metadata:
metadata_with_agent_name.append(metadata["lc_agent_name"])