From ff5613873f4492e25c5779183284a29e7be2f551 Mon Sep 17 00:00:00 2001 From: Pat Tullmann Date: Thu, 11 Jan 2024 21:03:36 -0800 Subject: [PATCH] std/fs/test.zig: Add statFile() tests of dangling symlink Create a dangling symlink and check that statFile works with it. --- lib/std/fs/test.zig | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/lib/std/fs/test.zig b/lib/std/fs/test.zig index edcdf40ef2..28d1d111d9 100644 --- a/lib/std/fs/test.zig +++ b/lib/std/fs/test.zig @@ -661,6 +661,19 @@ test "Dir.statFile" { }.impl); } +test "statFile on dangling symlink" { + try testWithAllSupportedPathTypes(struct { + fn impl(ctx: *TestContext) !void { + const symlink_name = try ctx.transformPath("dangling-symlink"); + const symlink_target = "." ++ fs.path.sep_str ++ "doesnotexist"; + + try setupSymlink(ctx.dir, symlink_target, symlink_name, .{}); + + try std.testing.expectError(error.FileNotFound, ctx.dir.statFile(symlink_name)); + } + }.impl); +} + test "directory operations on files" { try testWithAllSupportedPathTypes(struct { fn impl(ctx: *TestContext) !void {