authorgravatar for andrew@ziglang.orgAndrew Kelley <andrew@ziglang.org> 2024-01-01 19:27:40-07:00
committergravatar for andrew@ziglang.orgAndrew Kelley <andrew@ziglang.org> 2024-01-01 19:49:08-07:00
log2b63ba31e9757347b4e8d10c435396f94367ef45
treeee01cc8fc879cbb4029c1ff4c7187f5fb96ded4b
parentd5c1e7f7b1381036f7d98c1944607cb0e1c0d4da

add standalone test for depending on the main module


4 files changed, 43 insertions(+), 0 deletions(-)

test/standalone.zig+4
...@@ -258,6 +258,10 @@ pub const build_cases = [_]BuildCase{...@@ -258,6 +258,10 @@ pub const build_cases = [_]BuildCase{
258 .build_root = "test/standalone/ios",258 .build_root = "test/standalone/ios",
259 .import = @import("standalone/ios/build.zig"),259 .import = @import("standalone/ios/build.zig"),
260 },260 },
261 .{
262 .build_root = "test/standalone/depend_on_main_mod",
263 .import = @import("standalone/depend_on_main_mod/build.zig"),
264 },
261};265};
262266
263const std = @import("std");267const std = @import("std");
test/standalone/depend_on_main_mod/build.zig created+28
...@@ -0,0 +1,28 @@
1const std = @import("std");
2
3pub fn build(b: *std.Build) void {
4 const test_step = b.step("test", "Test it");
5 b.default_step = test_step;
6
7 const target = b.standardTargetOptions(.{});
8 const optimize = b.standardOptimizeOption(.{});
9
10 const exe = b.addExecutable(.{
11 .name = "depend_on_main_mod",
12 .root_source_file = .{ .path = "src/main.zig" },
13 .target = target,
14 .optimize = optimize,
15 });
16
17 const foo_module = b.addModule("foo", .{
18 .root_source_file = .{ .path = "src/foo.zig" },
19 });
20
21 foo_module.addImport("root2", &exe.root_module);
22 exe.root_module.addImport("foo", foo_module);
23
24 const run_cmd = b.addRunArtifact(exe);
25 run_cmd.expectExitCode(0);
26
27 test_step.dependOn(&run_cmd.step);
28}
test/standalone/depend_on_main_mod/src/foo.zig created+6
...@@ -0,0 +1,6 @@
1const std = @import("std");
2const assert = std.debug.assert;
3
4pub fn run() void {
5 comptime assert(@import("root") == @import("root2"));
6}
test/standalone/depend_on_main_mod/src/main.zig created+5
...@@ -0,0 +1,5 @@
1const std = @import("std");
2
3pub fn main() !void {
4 @import("foo").run();
5}