refactor: remove union types

Signed-off-by: Stream <Stream_2@qq.com>
This commit is contained in:
Stream
2026-01-31 00:39:57 +08:00
parent a87560d667
commit 9ad49340bf
13 changed files with 257 additions and 361 deletions

View File

@ -1,4 +1,3 @@
import json
from collections.abc import Generator
from core.agent.entities import AgentScratchpadUnit
@ -64,7 +63,7 @@ def test_cot_output_parser():
output += result
elif isinstance(result, AgentScratchpadUnit.Action):
if test_case["action"]:
assert result.to_dict() == test_case["action"]
output += json.dumps(result.to_dict())
assert result.model_dump() == test_case["action"]
output += result.model_dump_json()
if test_case["output"]:
assert output == test_case["output"]

View File

@ -13,7 +13,7 @@ from core.model_runtime.entities.llm_entities import LLMUsage
class ConcreteAgentPattern(AgentPattern):
"""Concrete implementation of AgentPattern for testing."""
def run(self, prompt_messages, model_parameters, stop=[], stream=True):
def run(self, prompt_messages, model_parameters, stop=[]):
"""Minimal implementation for testing."""
yield from []

View File

@ -5,7 +5,7 @@ from unittest.mock import MagicMock, patch
import pytest
from core.agent.entities import AgentEntity, AgentLog, AgentOutputKind, AgentPromptEntity, AgentResult
from core.agent.entities import AgentEntity, AgentLog, AgentPromptEntity, AgentResult
from core.model_runtime.entities import SystemPromptMessage, UserPromptMessage
from core.model_runtime.entities.llm_entities import LLMUsage
@ -329,20 +329,15 @@ class TestAgentLogProcessing:
)
result = AgentResult(
output=AgentResult.StructuredOutput(
output_kind=AgentOutputKind.FINAL_OUTPUT_ANSWER,
output_text="Final answer",
output_data=None,
),
output="Final answer",
files=[],
usage=usage,
finish_reason="stop",
)
output_payload = result.output
assert isinstance(output_payload, AgentResult.StructuredOutput)
assert output_payload.output_text == "Final answer"
assert output_payload.output_kind == AgentOutputKind.FINAL_OUTPUT_ANSWER
assert isinstance(output_payload, str)
assert output_payload == "Final answer"
assert result.files == []
assert result.usage == usage
assert result.finish_reason == "stop"

View File

@ -153,7 +153,7 @@ class TestAgentScratchpadUnit:
action_input={"query": "test"},
)
result = action.to_dict()
result = action.model_dump()
assert result == {
"action": "search",