aboutsummaryrefslogtreecommitdiff
path: root/test/behavior/empty_tuple_fields.zig
blob: a7a3d27e02ae8cb91540499d27df910d9f767816 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
const std = @import("std");
const builtin = @import("builtin");

test "empty file level struct" {
    if (builtin.zig_backend == .stage2_arm) return error.SkipZigTest; // TODO
    if (builtin.zig_backend == .stage2_aarch64) return error.SkipZigTest; // TODO
    if (builtin.zig_backend == .stage2_spirv64) return error.SkipZigTest;

    const T = @import("empty_file_level_struct.zig");
    const info = @typeInfo(T);
    try std.testing.expectEqual(@as(usize, 1), info.Struct.fields.len);
    try std.testing.expectEqualStrings("0", info.Struct.fields[0].name);
    try std.testing.expect(@typeInfo(info.Struct.fields[0].type) == .Struct);
}

test "empty file level union" {
    if (builtin.zig_backend == .stage2_arm) return error.SkipZigTest; // TODO
    if (builtin.zig_backend == .stage2_aarch64) return error.SkipZigTest; // TODO
    if (builtin.zig_backend == .stage2_spirv64) return error.SkipZigTest;

    const T = @import("empty_file_level_union.zig");
    const info = @typeInfo(T);
    try std.testing.expectEqual(@as(usize, 1), info.Struct.fields.len);
    try std.testing.expectEqualStrings("0", info.Struct.fields[0].name);
    try std.testing.expect(@typeInfo(info.Struct.fields[0].type) == .Union);
}