diff options
| author | Jacob Young <jacobly0@users.noreply.github.com> | 2023-10-22 08:06:47 -0400 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2023-10-22 08:06:47 -0400 |
| commit | 0c99ba1eab63865592bb084feb271cd4e4b0357e (patch) | |
| tree | 7004c99fc0619ff94317cc176900d1d3a3c88335 /lib/std/os | |
| parent | 5f92b070bf284f1493b1b5d433dd3adde2f46727 (diff) | |
| parent | 920e9668ddb16fbb98cd08b43ed2364062a4b102 (diff) | |
| download | zig-0c99ba1eab63865592bb084feb271cd4e4b0357e.tar.gz zig-0c99ba1eab63865592bb084feb271cd4e4b0357e.zip | |
Merge pull request #17637 from jacobly0/x86_64-test-std
x86_64: start to enable `test-std` and `test-compiler-rt` testing
Diffstat (limited to 'lib/std/os')
| -rw-r--r-- | lib/std/os/linux/io_uring.zig | 30 | ||||
| -rw-r--r-- | lib/std/os/linux/test.zig | 6 | ||||
| -rw-r--r-- | lib/std/os/test.zig | 51 | ||||
| -rw-r--r-- | lib/std/os/windows.zig | 2 |
4 files changed, 89 insertions, 0 deletions
diff --git a/lib/std/os/linux/io_uring.zig b/lib/std/os/linux/io_uring.zig index 7f7dd21f95..91a9f1618c 100644 --- a/lib/std/os/linux/io_uring.zig +++ b/lib/std/os/linux/io_uring.zig @@ -1741,6 +1741,8 @@ test "readv" { test "writev/fsync/readv" { if (builtin.os.tag != .linux) return error.SkipZigTest; + if (builtin.zig_backend == .stage2_x86_64) return error.SkipZigTest; + var ring = IO_Uring.init(4, 0) catch |err| switch (err) { error.SystemOutdated => return error.SkipZigTest, error.PermissionDenied => return error.SkipZigTest, @@ -1811,6 +1813,8 @@ test "writev/fsync/readv" { test "write/read" { if (builtin.os.tag != .linux) return error.SkipZigTest; + if (builtin.zig_backend == .stage2_x86_64) return error.SkipZigTest; + var ring = IO_Uring.init(2, 0) catch |err| switch (err) { error.SystemOutdated => return error.SkipZigTest, error.PermissionDenied => return error.SkipZigTest, @@ -1858,6 +1862,8 @@ test "write/read" { test "splice/read" { if (builtin.os.tag != .linux) return error.SkipZigTest; + if (builtin.zig_backend == .stage2_x86_64) return error.SkipZigTest; + var ring = IO_Uring.init(4, 0) catch |err| switch (err) { error.SystemOutdated => return error.SkipZigTest, error.PermissionDenied => return error.SkipZigTest, @@ -1929,6 +1935,8 @@ test "splice/read" { test "write_fixed/read_fixed" { if (builtin.os.tag != .linux) return error.SkipZigTest; + if (builtin.zig_backend == .stage2_x86_64) return error.SkipZigTest; + var ring = IO_Uring.init(2, 0) catch |err| switch (err) { error.SystemOutdated => return error.SkipZigTest, error.PermissionDenied => return error.SkipZigTest, @@ -1994,6 +2002,8 @@ test "write_fixed/read_fixed" { test "openat" { if (builtin.os.tag != .linux) return error.SkipZigTest; + if (builtin.zig_backend == .stage2_x86_64) return error.SkipZigTest; + var ring = IO_Uring.init(1, 0) catch |err| switch (err) { error.SystemOutdated => return error.SkipZigTest, error.PermissionDenied => return error.SkipZigTest, @@ -2045,6 +2055,8 @@ test "openat" { test "close" { if (builtin.os.tag != .linux) return error.SkipZigTest; + if (builtin.zig_backend == .stage2_x86_64) return error.SkipZigTest; + var ring = IO_Uring.init(1, 0) catch |err| switch (err) { error.SystemOutdated => return error.SkipZigTest, error.PermissionDenied => return error.SkipZigTest, @@ -2204,6 +2216,8 @@ test "sendmsg/recvmsg" { test "timeout (after a relative time)" { if (builtin.os.tag != .linux) return error.SkipZigTest; + if (builtin.zig_backend == .stage2_x86_64) return error.SkipZigTest; + var ring = IO_Uring.init(1, 0) catch |err| switch (err) { error.SystemOutdated => return error.SkipZigTest, error.PermissionDenied => return error.SkipZigTest, @@ -2268,6 +2282,8 @@ test "timeout (after a number of completions)" { test "timeout_remove" { if (builtin.os.tag != .linux) return error.SkipZigTest; + if (builtin.zig_backend == .stage2_x86_64) return error.SkipZigTest; + var ring = IO_Uring.init(2, 0) catch |err| switch (err) { error.SystemOutdated => return error.SkipZigTest, error.PermissionDenied => return error.SkipZigTest, @@ -2376,6 +2392,8 @@ test "accept/connect/recv/link_timeout" { test "fallocate" { if (builtin.os.tag != .linux) return error.SkipZigTest; + if (builtin.zig_backend == .stage2_x86_64) return error.SkipZigTest; + var ring = IO_Uring.init(1, 0) catch |err| switch (err) { error.SystemOutdated => return error.SkipZigTest, error.PermissionDenied => return error.SkipZigTest, @@ -2422,6 +2440,8 @@ test "fallocate" { test "statx" { if (builtin.os.tag != .linux) return error.SkipZigTest; + if (builtin.zig_backend == .stage2_x86_64) return error.SkipZigTest; + var ring = IO_Uring.init(1, 0) catch |err| switch (err) { error.SystemOutdated => return error.SkipZigTest, error.PermissionDenied => return error.SkipZigTest, @@ -2678,6 +2698,8 @@ test "shutdown" { test "renameat" { if (builtin.os.tag != .linux) return error.SkipZigTest; + if (builtin.zig_backend == .stage2_x86_64) return error.SkipZigTest; + var ring = IO_Uring.init(1, 0) catch |err| switch (err) { error.SystemOutdated => return error.SkipZigTest, error.PermissionDenied => return error.SkipZigTest, @@ -2747,6 +2769,8 @@ test "renameat" { test "unlinkat" { if (builtin.os.tag != .linux) return error.SkipZigTest; + if (builtin.zig_backend == .stage2_x86_64) return error.SkipZigTest; + var ring = IO_Uring.init(1, 0) catch |err| switch (err) { error.SystemOutdated => return error.SkipZigTest, error.PermissionDenied => return error.SkipZigTest, @@ -2799,6 +2823,8 @@ test "unlinkat" { test "mkdirat" { if (builtin.os.tag != .linux) return error.SkipZigTest; + if (builtin.zig_backend == .stage2_x86_64) return error.SkipZigTest; + var ring = IO_Uring.init(1, 0) catch |err| switch (err) { error.SystemOutdated => return error.SkipZigTest, error.PermissionDenied => return error.SkipZigTest, @@ -2843,6 +2869,8 @@ test "mkdirat" { test "symlinkat" { if (builtin.os.tag != .linux) return error.SkipZigTest; + if (builtin.zig_backend == .stage2_x86_64) return error.SkipZigTest; + var ring = IO_Uring.init(1, 0) catch |err| switch (err) { error.SystemOutdated => return error.SkipZigTest, error.PermissionDenied => return error.SkipZigTest, @@ -2891,6 +2919,8 @@ test "symlinkat" { test "linkat" { if (builtin.os.tag != .linux) return error.SkipZigTest; + if (builtin.zig_backend == .stage2_x86_64) return error.SkipZigTest; + var ring = IO_Uring.init(1, 0) catch |err| switch (err) { error.SystemOutdated => return error.SkipZigTest, error.PermissionDenied => return error.SkipZigTest, diff --git a/lib/std/os/linux/test.zig b/lib/std/os/linux/test.zig index 170bde6334..1c2ca643b2 100644 --- a/lib/std/os/linux/test.zig +++ b/lib/std/os/linux/test.zig @@ -8,6 +8,8 @@ const expectEqual = std.testing.expectEqual; const fs = std.fs; test "fallocate" { + if (builtin.zig_backend == .stage2_x86_64) return error.SkipZigTest; + var tmp = std.testing.tmpDir(.{}); defer tmp.cleanup(); @@ -69,6 +71,8 @@ test "timer" { } test "statx" { + if (builtin.zig_backend == .stage2_x86_64) return error.SkipZigTest; + var tmp = std.testing.tmpDir(.{}); defer tmp.cleanup(); @@ -107,6 +111,8 @@ test "user and group ids" { } test "fadvise" { + if (builtin.zig_backend == .stage2_x86_64) return error.SkipZigTest; + var tmp = std.testing.tmpDir(.{}); defer tmp.cleanup(); diff --git a/lib/std/os/test.zig b/lib/std/os/test.zig index c74733cd93..ca3de5f264 100644 --- a/lib/std/os/test.zig +++ b/lib/std/os/test.zig @@ -88,6 +88,8 @@ test "chdir smoke test" { test "open smoke test" { if (native_os == .wasi) return error.SkipZigTest; + if (builtin.zig_backend == .stage2_x86_64) return error.SkipZigTest; + // TODO verify file attributes using `fstat` var tmp = tmpDir(.{}); @@ -142,6 +144,8 @@ test "open smoke test" { test "openat smoke test" { if (native_os == .wasi and builtin.link_libc) return error.SkipZigTest; + if (builtin.zig_backend == .stage2_x86_64) return error.SkipZigTest; + // TODO verify file attributes using `fstatat` var tmp = tmpDir(.{}); @@ -276,6 +280,8 @@ test "link with relative paths" { test "linkat with different directories" { if (native_os == .wasi and builtin.link_libc) return error.SkipZigTest; + if (builtin.zig_backend == .stage2_x86_64) return error.SkipZigTest; + switch (native_os) { .wasi, .linux, .solaris, .illumos => {}, else => return error.SkipZigTest, @@ -321,6 +327,8 @@ test "fstatat" { // enable when `fstat` and `fstatat` are implemented on Windows if (native_os == .windows) return error.SkipZigTest; + if (builtin.zig_backend == .stage2_x86_64) return error.SkipZigTest; + var tmp = tmpDir(.{}); defer tmp.cleanup(); @@ -340,6 +348,8 @@ test "fstatat" { } test "readlinkat" { + if (builtin.zig_backend == .stage2_x86_64) return error.SkipZigTest; + var tmp = tmpDir(.{}); defer tmp.cleanup(); @@ -375,6 +385,8 @@ fn testThreadIdFn(thread_id: *Thread.Id) void { test "std.Thread.getCurrentId" { if (builtin.single_threaded) return error.SkipZigTest; + if (builtin.zig_backend == .stage2_x86_64) return error.SkipZigTest; + var thread_current_id: Thread.Id = undefined; const thread = try Thread.spawn(.{}, testThreadIdFn, .{&thread_current_id}); thread.join(); @@ -417,6 +429,9 @@ test "cpu count" { test "thread local storage" { if (builtin.single_threaded) return error.SkipZigTest; + + if (builtin.zig_backend == .stage2_x86_64) return error.SkipZigTest; + const thread1 = try Thread.spawn(.{}, testTls, .{}); const thread2 = try Thread.spawn(.{}, testTls, .{}); try testTls(); @@ -504,6 +519,8 @@ fn iter_fn(info: *dl_phdr_info, size: usize, counter: *usize) IterFnError!void { test "dl_iterate_phdr" { if (builtin.object_format != .elf) return error.SkipZigTest; + if (builtin.zig_backend == .stage2_x86_64) return error.SkipZigTest; + var counter: usize = 0; try os.dl_iterate_phdr(&counter, IterFnError, iter_fn); try expect(counter != 0); @@ -566,6 +583,8 @@ test "mmap" { if (native_os == .windows or native_os == .wasi) return error.SkipZigTest; + if (builtin.zig_backend == .stage2_x86_64) return error.SkipZigTest; + var tmp = tmpDir(.{}); defer tmp.cleanup(); @@ -676,6 +695,8 @@ test "fcntl" { if (native_os == .windows or native_os == .wasi) return error.SkipZigTest; + if (builtin.zig_backend == .stage2_x86_64) return error.SkipZigTest; + var tmp = tmpDir(.{}); defer tmp.cleanup(); @@ -716,6 +737,8 @@ test "sync" { if (native_os != .linux) return error.SkipZigTest; + if (builtin.zig_backend == .stage2_x86_64) return error.SkipZigTest; + var tmp = tmpDir(.{}); defer tmp.cleanup(); @@ -736,6 +759,8 @@ test "fsync" { else => return error.SkipZigTest, } + if (builtin.zig_backend == .stage2_x86_64) return error.SkipZigTest; + var tmp = tmpDir(.{}); defer tmp.cleanup(); @@ -755,6 +780,8 @@ test "getrlimit and setrlimit" { return error.SkipZigTest; } + if (builtin.zig_backend == .stage2_x86_64) return error.SkipZigTest; + inline for (std.meta.fields(os.rlimit_resource)) |field| { const resource = @as(os.rlimit_resource, @enumFromInt(field.value)); const limit = try os.getrlimit(resource); @@ -797,6 +824,8 @@ test "sigaction" { if (native_os == .wasi or native_os == .windows) return error.SkipZigTest; + if (builtin.zig_backend == .stage2_x86_64) return error.SkipZigTest; + // https://github.com/ziglang/zig/issues/7427 if (native_os == .linux and builtin.target.cpu.arch == .x86) return error.SkipZigTest; @@ -874,6 +903,8 @@ test "dup & dup2" { else => return error.SkipZigTest, } + if (builtin.zig_backend == .stage2_x86_64) return error.SkipZigTest; + var tmp = tmpDir(.{}); defer tmp.cleanup(); @@ -903,6 +934,8 @@ test "dup & dup2" { test "writev longer than IOV_MAX" { if (native_os == .windows or native_os == .wasi) return error.SkipZigTest; + if (builtin.zig_backend == .stage2_x86_64) return error.SkipZigTest; + var tmp = tmpDir(.{}); defer tmp.cleanup(); @@ -920,6 +953,8 @@ test "POSIX file locking with fcntl" { return error.SkipZigTest; } + if (builtin.zig_backend == .stage2_x86_64) return error.SkipZigTest; + if (true) { // https://github.com/ziglang/zig/issues/11074 return error.SkipZigTest; @@ -982,6 +1017,8 @@ test "POSIX file locking with fcntl" { test "rename smoke test" { if (native_os == .wasi) return error.SkipZigTest; + if (builtin.zig_backend == .stage2_x86_64) return error.SkipZigTest; + var tmp = tmpDir(.{}); defer tmp.cleanup(); @@ -1038,6 +1075,8 @@ test "rename smoke test" { test "access smoke test" { if (native_os == .wasi) return error.SkipZigTest; + if (builtin.zig_backend == .stage2_x86_64) return error.SkipZigTest; + var tmp = tmpDir(.{}); defer tmp.cleanup(); @@ -1102,6 +1141,8 @@ test "timerfd" { } test "isatty" { + if (builtin.zig_backend == .stage2_x86_64) return error.SkipZigTest; + var tmp = tmpDir(.{}); defer tmp.cleanup(); @@ -1114,6 +1155,8 @@ test "isatty" { test "read with empty buffer" { if (native_os == .wasi) return error.SkipZigTest; + if (builtin.zig_backend == .stage2_x86_64) return error.SkipZigTest; + var tmp = tmpDir(.{}); defer tmp.cleanup(); @@ -1139,6 +1182,8 @@ test "read with empty buffer" { test "pread with empty buffer" { if (native_os == .wasi) return error.SkipZigTest; + if (builtin.zig_backend == .stage2_x86_64) return error.SkipZigTest; + var tmp = tmpDir(.{}); defer tmp.cleanup(); @@ -1164,6 +1209,8 @@ test "pread with empty buffer" { test "write with empty buffer" { if (native_os == .wasi) return error.SkipZigTest; + if (builtin.zig_backend == .stage2_x86_64) return error.SkipZigTest; + var tmp = tmpDir(.{}); defer tmp.cleanup(); @@ -1189,6 +1236,8 @@ test "write with empty buffer" { test "pwrite with empty buffer" { if (native_os == .wasi) return error.SkipZigTest; + if (builtin.zig_backend == .stage2_x86_64) return error.SkipZigTest; + var tmp = tmpDir(.{}); defer tmp.cleanup(); @@ -1214,6 +1263,8 @@ test "pwrite with empty buffer" { test "fchmodat smoke test" { if (!std.fs.has_executable_bit) return error.SkipZigTest; + if (builtin.zig_backend == .stage2_x86_64) return error.SkipZigTest; + var tmp = tmpDir(.{}); defer tmp.cleanup(); diff --git a/lib/std/os/windows.zig b/lib/std/os/windows.zig index 05b754de8d..b426db968d 100644 --- a/lib/std/os/windows.zig +++ b/lib/std/os/windows.zig @@ -2491,6 +2491,8 @@ pub fn ntToWin32Namespace(path: []const u16) !PathSpace { } test "ntToWin32Namespace" { + if (builtin.zig_backend == .stage2_x86_64) return error.SkipZigTest; + const L = std.unicode.utf8ToUtf16LeStringLiteral; try testNtToWin32Namespace(L("UNC"), L("\\??\\UNC")); |
