Commit 5c8b92db7f
Changed files (5)
test
standalone
run_output_caching
self_exe_symlink
test/standalone/dirname/exists_in.zig
@@ -29,17 +29,12 @@ fn run(allocator: std.mem.Allocator) !void {
return error.BadUsage;
};
- if (!std.fs.path.isAbsolute(dir_path)) {
- std.log.err("expected <dir> to be an absolute path", .{});
- return error.BadUsage;
- }
-
const relpath = args.next() orelse {
std.log.err("missing <path> argument", .{});
return error.BadUsage;
};
- var dir = try std.fs.openDirAbsolute(dir_path, .{});
+ var dir = try std.fs.cwd().openDir(dir_path, .{});
defer dir.close();
_ = try dir.statFile(relpath);
test/standalone/dirname/has_basename.zig
@@ -31,11 +31,6 @@ fn run(allocator: std.mem.Allocator) !void {
return error.BadUsage;
};
- if (!std.fs.path.isAbsolute(path)) {
- std.log.err("path must be absolute", .{});
- return error.BadUsage;
- }
-
const basename = args.next() orelse {
std.log.err("missing <basename> argument", .{});
return error.BadUsage;
test/standalone/dirname/touch.zig
@@ -26,15 +26,10 @@ fn run(allocator: std.mem.Allocator) !void {
return error.BadUsage;
};
- if (!std.fs.path.isAbsolute(path)) {
- std.log.err("path must be absolute: {s}", .{path});
- return error.BadUsage;
- }
-
const dir_path = std.fs.path.dirname(path) orelse unreachable;
const basename = std.fs.path.basename(path);
- var dir = try std.fs.openDirAbsolute(dir_path, .{});
+ var dir = try std.fs.cwd().openDir(dir_path, .{});
defer dir.close();
_ = dir.statFile(basename) catch {
test/standalone/run_output_caching/main.zig
@@ -4,7 +4,7 @@ pub fn main() !void {
var args = try std.process.argsWithAllocator(std.heap.page_allocator);
_ = args.skip();
const filename = args.next().?;
- const file = try std.fs.createFileAbsolute(filename, .{});
+ const file = try std.fs.cwd().createFile(filename, .{});
defer file.close();
try file.writeAll(filename);
}
test/standalone/self_exe_symlink/create-symlink.zig
@@ -11,5 +11,8 @@ pub fn main() anyerror!void {
const exe_path = it.next() orelse unreachable;
const symlink_path = it.next() orelse unreachable;
- try std.fs.cwd().symLink(exe_path, symlink_path, .{});
+ // If `exe_path` is relative to our cwd, we need to convert it to be relative to the dirname of `symlink_path`.
+ const exe_rel_path = try std.fs.path.relative(allocator, std.fs.path.dirname(symlink_path) orelse ".", exe_path);
+ defer allocator.free(exe_rel_path);
+ try std.fs.cwd().symLink(exe_rel_path, symlink_path, .{});
}