| 127 | |
| 128 | #[tokio::test] |
| 129 | async fn test_read_file() { |
| 130 | let temp = tempfile::tempdir().unwrap(); |
| 131 | let file = temp.path().join("test.txt"); |
| 132 | std::fs::write(&file, "line1\nline2\nline3\n").unwrap(); |
| 133 | |
| 134 | let tool = ReadTool; |
| 135 | let ctx = ToolContext::new(temp.path().to_path_buf()); |
| 136 | let result = tool |
| 137 | .execute(&serde_json::json!({"file_path": "test.txt"}), &ctx) |
| 138 | .await |
| 139 | .unwrap(); |
| 140 | |
| 141 | assert!(result.success); |
| 142 | assert!(result.content.contains("line1")); |
| 143 | assert!(result.content.contains("line2")); |
| 144 | assert!(result.content.contains("line3")); |
| 145 | } |
| 146 | |
| 147 | #[tokio::test] |
| 148 | async fn test_read_with_offset_and_limit() { |