aboutsummaryrefslogtreecommitdiff
path: root/test
diff options
context:
space:
mode:
authorAndrew Kelley <andrew@ziglang.org>2024-01-01 19:27:40 -0700
committerAndrew Kelley <andrew@ziglang.org>2024-01-01 19:49:08 -0700
commit2b63ba31e9757347b4e8d10c435396f94367ef45 (patch)
treeee01cc8fc879cbb4029c1ff4c7187f5fb96ded4b /test
parentd5c1e7f7b1381036f7d98c1944607cb0e1c0d4da (diff)
downloadzig-2b63ba31e9757347b4e8d10c435396f94367ef45.tar.gz
zig-2b63ba31e9757347b4e8d10c435396f94367ef45.zip
add standalone test for depending on the main module
Diffstat (limited to 'test')
-rw-r--r--test/standalone.zig4
-rw-r--r--test/standalone/depend_on_main_mod/build.zig28
-rw-r--r--test/standalone/depend_on_main_mod/src/foo.zig6
-rw-r--r--test/standalone/depend_on_main_mod/src/main.zig5
4 files changed, 43 insertions, 0 deletions
diff --git a/test/standalone.zig b/test/standalone.zig
index 0303c49c13..b26e85c159 100644
--- a/test/standalone.zig
+++ b/test/standalone.zig
@@ -258,6 +258,10 @@ pub const build_cases = [_]BuildCase{
.build_root = "test/standalone/ios",
.import = @import("standalone/ios/build.zig"),
},
+ .{
+ .build_root = "test/standalone/depend_on_main_mod",
+ .import = @import("standalone/depend_on_main_mod/build.zig"),
+ },
};
const std = @import("std");
diff --git a/test/standalone/depend_on_main_mod/build.zig b/test/standalone/depend_on_main_mod/build.zig
new file mode 100644
index 0000000000..bbef64693e
--- /dev/null
+++ b/test/standalone/depend_on_main_mod/build.zig
@@ -0,0 +1,28 @@
+const std = @import("std");
+
+pub fn build(b: *std.Build) void {
+ const test_step = b.step("test", "Test it");
+ b.default_step = test_step;
+
+ const target = b.standardTargetOptions(.{});
+ const optimize = b.standardOptimizeOption(.{});
+
+ const exe = b.addExecutable(.{
+ .name = "depend_on_main_mod",
+ .root_source_file = .{ .path = "src/main.zig" },
+ .target = target,
+ .optimize = optimize,
+ });
+
+ const foo_module = b.addModule("foo", .{
+ .root_source_file = .{ .path = "src/foo.zig" },
+ });
+
+ foo_module.addImport("root2", &exe.root_module);
+ exe.root_module.addImport("foo", foo_module);
+
+ const run_cmd = b.addRunArtifact(exe);
+ run_cmd.expectExitCode(0);
+
+ test_step.dependOn(&run_cmd.step);
+}
diff --git a/test/standalone/depend_on_main_mod/src/foo.zig b/test/standalone/depend_on_main_mod/src/foo.zig
new file mode 100644
index 0000000000..0a52bce8aa
--- /dev/null
+++ b/test/standalone/depend_on_main_mod/src/foo.zig
@@ -0,0 +1,6 @@
+const std = @import("std");
+const assert = std.debug.assert;
+
+pub fn run() void {
+ comptime assert(@import("root") == @import("root2"));
+}
diff --git a/test/standalone/depend_on_main_mod/src/main.zig b/test/standalone/depend_on_main_mod/src/main.zig
new file mode 100644
index 0000000000..0735fff4c7
--- /dev/null
+++ b/test/standalone/depend_on_main_mod/src/main.zig
@@ -0,0 +1,5 @@
+const std = @import("std");
+
+pub fn main() !void {
+ @import("foo").run();
+}