| ... | ... | @@ -274,6 +274,32 @@ test "file operations on directories" { |
| 274 | 274 | dir.close(); |
| 275 | 275 | } |
| 276 | 276 | |
| 277 | test "deleteDir" { |
| 278 | var tmp_dir = tmpDir(.{}); |
| 279 | defer tmp_dir.cleanup(); |
| 280 | |
| 281 | // deleting a non-existent directory |
| 282 | testing.expectError(error.FileNotFound, tmp_dir.dir.deleteDir("test_dir")); |
| 283 | |
| 284 | var dir = try tmp_dir.dir.makeOpenPath("test_dir", .{}); |
| 285 | var file = try dir.createFile("test_file", .{}); |
| 286 | file.close(); |
| 287 | dir.close(); |
| 288 | |
| 289 | // deleting a non-empty directory |
| 290 | // TODO: Re-enable this check on Windows, see https://github.com/ziglang/zig/issues/5537 |
| 291 | if (builtin.os.tag != .windows) { |
| 292 | testing.expectError(error.DirNotEmpty, tmp_dir.dir.deleteDir("test_dir")); |
| 293 | } |
| 294 | |
| 295 | dir = try tmp_dir.dir.openDir("test_dir", .{}); |
| 296 | try dir.deleteFile("test_file"); |
| 297 | dir.close(); |
| 298 | |
| 299 | // deleting an empty directory |
| 300 | try tmp_dir.dir.deleteDir("test_dir"); |
| 301 | } |
| 302 | |
| 277 | 303 | test "Dir.rename files" { |
| 278 | 304 | var tmp_dir = tmpDir(.{}); |
| 279 | 305 | defer tmp_dir.cleanup(); |