Spaces:
Runtime error
Runtime error
| """Test the FileManagementToolkit.""" | |
| from tempfile import TemporaryDirectory | |
| import pytest | |
| from langchain.agents.agent_toolkits.file_management.toolkit import ( | |
| FileManagementToolkit, | |
| ) | |
| from langchain.tools.base import BaseTool | |
| def test_file_toolkit_get_tools() -> None: | |
| """Test the get_tools method of FileManagementToolkit.""" | |
| with TemporaryDirectory() as temp_dir: | |
| toolkit = FileManagementToolkit(root_dir=temp_dir) | |
| tools = toolkit.get_tools() | |
| assert len(tools) > 0 | |
| assert all(isinstance(tool, BaseTool) for tool in tools) | |
| def test_file_toolkit_get_tools_with_selection() -> None: | |
| """Test the get_tools method of FileManagementToolkit with selected_tools.""" | |
| with TemporaryDirectory() as temp_dir: | |
| toolkit = FileManagementToolkit( | |
| root_dir=temp_dir, selected_tools=["read_file", "write_file"] | |
| ) | |
| tools = toolkit.get_tools() | |
| assert len(tools) == 2 | |
| tool_names = [tool.name for tool in tools] | |
| assert "read_file" in tool_names | |
| assert "write_file" in tool_names | |
| def test_file_toolkit_invalid_tool() -> None: | |
| """Test the FileManagementToolkit with an invalid tool.""" | |
| with TemporaryDirectory() as temp_dir: | |
| with pytest.raises(ValueError): | |
| FileManagementToolkit(root_dir=temp_dir, selected_tools=["invalid_tool"]) | |
| def test_file_toolkit_root_dir() -> None: | |
| """Test the FileManagementToolkit root_dir handling.""" | |
| with TemporaryDirectory() as temp_dir: | |
| toolkit = FileManagementToolkit(root_dir=temp_dir) | |
| tools = toolkit.get_tools() | |
| root_dirs = [tool.root_dir for tool in tools if hasattr(tool, "root_dir")] | |
| assert all(root_dir == temp_dir for root_dir in root_dirs) | |