Skip to content

Commit 86a3ba5

Browse files
WIP: Behaviour tests in build.zig
1 parent 7ddee31 commit 86a3ba5

File tree

1 file changed

+33
-0
lines changed

1 file changed

+33
-0
lines changed

build.zig

Lines changed: 33 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -51,4 +51,37 @@ pub fn build(b: *std.Build) void {
5151
});
5252
const run_dim_tests = b.addRunArtifact(dim_tests);
5353
test_step.dependOn(&run_dim_tests.step);
54+
55+
const behaviour_tests_step = b.step("behaviour", "Run all behaviour tests");
56+
for (behaviour_tests) |script| {
57+
const step_name = b.dupe(script);
58+
std.mem.replaceScalar(u8, step_name, '/', '-');
59+
const script_test = b.step(step_name, b.fmt("Run {s} behaviour test", .{script}));
60+
61+
const run_sizeless = b.addRunArtifact(dim_exe);
62+
run_sizeless.addArg("--output");
63+
_ = run_sizeless.addOutputFileArg("disk.img");
64+
run_sizeless.addArg("--script");
65+
run_sizeless.addFileArg(b.path(script));
66+
script_test.dependOn(&run_sizeless.step);
67+
68+
const run_with_size = b.addRunArtifact(dim_exe);
69+
run_with_size.addArg("--output");
70+
_ = run_with_size.addOutputFileArg("disk.img");
71+
run_with_size.addArg("--script");
72+
run_with_size.addFileArg(b.path(script));
73+
run_with_size.addArgs(&.{ "--size", "30M" });
74+
script_test.dependOn(&run_with_size.step);
75+
76+
behaviour_tests_step.dependOn(script_test);
77+
}
5478
}
79+
80+
const behaviour_tests: []const []const u8 = &.{
81+
"tests/basic/empty.dis",
82+
"tests/basic/fill-0x00.dis",
83+
"tests/basic/fill-0xAA.dis",
84+
"tests/basic/fill-0xFF.dis",
85+
"tests/basic/raw.dis",
86+
"tests/part/mbr/minimal.dis",
87+
};

0 commit comments

Comments
 (0)