Files
2026-07-13 12:43:34 +08:00

53 lines
1.9 KiB
Python

import pytest
from unittest.mock import Mock, MagicMock
from superagi.tools.code.improve_code import ImproveCodeTool
@pytest.fixture
def mock_improve_code_tool():
improve_code_tool = ImproveCodeTool()
improve_code_tool.resource_manager = Mock()
improve_code_tool.llm = Mock()
return improve_code_tool
def test_execute(mock_improve_code_tool):
mock_improve_code_tool.resource_manager.get_files.return_value = ['test1', 'test2']
mock_improve_code_tool.resource_manager.read_file.return_value = "test file content"
mock_improve_code_tool.llm.chat_completion.return_value = {
"response":
{
"choices":
[
{
"message":
{
"content": "```\nimproved code\n```"
}
}
]
}
}
mock_improve_code_tool.resource_manager.write_file.return_value = "file saved successfully"
assert mock_improve_code_tool._execute() == "All codes improved and saved successfully in: test1 test2"
def test_execute_with_error(mock_improve_code_tool):
mock_improve_code_tool.resource_manager.get_files.return_value = ['test1']
mock_improve_code_tool.resource_manager.read_file.return_value = "test file content"
mock_improve_code_tool.llm.chat_completion.return_value = {
"response":
{
"choices":
[
{
"message":
{
"content": "```\nimproved code\n```"
}
}
]
}
}
mock_improve_code_tool.resource_manager.write_file.return_value = "Error: Could not save file"
assert mock_improve_code_tool._execute() == "Error: Could not save file"