Spaces:
Runtime error
Runtime error
| """Test the WriteFile tool.""" | |
| from pathlib import Path | |
| from tempfile import TemporaryDirectory | |
| from langchain.tools.file_management.utils import ( | |
| INVALID_PATH_TEMPLATE, | |
| ) | |
| from langchain.tools.file_management.write import WriteFileTool | |
| def test_write_file_with_root_dir() -> None: | |
| """Test the WriteFile tool when a root dir is specified.""" | |
| with TemporaryDirectory() as temp_dir: | |
| tool = WriteFileTool(root_dir=temp_dir) | |
| tool.run({"file_path": "file.txt", "text": "Hello, world!"}) | |
| assert (Path(temp_dir) / "file.txt").exists() | |
| assert (Path(temp_dir) / "file.txt").read_text() == "Hello, world!" | |
| def test_write_file_errs_outside_root_dir() -> None: | |
| """Test the WriteFile tool when a root dir is specified.""" | |
| with TemporaryDirectory() as temp_dir: | |
| tool = WriteFileTool(root_dir=temp_dir) | |
| result = tool.run({"file_path": "../file.txt", "text": "Hello, world!"}) | |
| assert result == INVALID_PATH_TEMPLATE.format( | |
| arg_name="file_path", value="../file.txt" | |
| ) | |
| def test_write_file() -> None: | |
| """Test the WriteFile tool.""" | |
| with TemporaryDirectory() as temp_dir: | |
| file_path = str(Path(temp_dir) / "file.txt") | |
| tool = WriteFileTool() | |
| tool.run({"file_path": file_path, "text": "Hello, world!"}) | |
| assert (Path(temp_dir) / "file.txt").exists() | |
| assert (Path(temp_dir) / "file.txt").read_text() == "Hello, world!" | |