mirror of
https://github.com/pewdiepie-archdaemon/odysseus.git
synced 2026-07-08 11:56:59 +00:00
39 lines
1.2 KiB
Python
39 lines
1.2 KiB
Python
from src.agent_loop import _normalize_stream_document_fences
|
|
from src.tool_parsing import parse_tool_blocks
|
|
|
|
|
|
def test_truncated_update_document_fence_is_executable():
|
|
text = "```update_documen\n# Title\n\nSwedish body\n```"
|
|
|
|
normalized = _normalize_stream_document_fences(text, "update_document")
|
|
blocks = parse_tool_blocks(normalized)
|
|
|
|
assert len(blocks) == 1
|
|
assert blocks[0].tool_type == "update_document"
|
|
assert "Swedish body" in blocks[0].content
|
|
|
|
|
|
def test_truncated_edit_document_fence_is_executable():
|
|
text = (
|
|
"```edit_documen\n"
|
|
"<<<FIND>>>\nold\n<<<REPLACE>>>\nnew\n<<<END>>>\n"
|
|
"```"
|
|
)
|
|
|
|
normalized = _normalize_stream_document_fences(text, "update_document")
|
|
blocks = parse_tool_blocks(normalized)
|
|
|
|
assert len(blocks) == 1
|
|
assert blocks[0].tool_type == "edit_document"
|
|
|
|
|
|
def test_compact_truncated_edit_document_fence_is_executable():
|
|
text = "```edi_documen\n<<FIND>old\n<<REPLACE>new\n<<END>```\n|end|"
|
|
|
|
normalized = _normalize_stream_document_fences(text, "update_document")
|
|
blocks = parse_tool_blocks(normalized)
|
|
|
|
assert len(blocks) == 1
|
|
assert blocks[0].tool_type == "edit_document"
|
|
assert blocks[0].content == "<<<FIND>>>\nold\n<<<REPLACE>>>\nnew\n<<<END>>>"
|