ww test: retain directory test binaries like Go

This commit is contained in:
2026-08-20 20:13:08 +09:00
parent f28843f2f5
commit db5782eff9
10 changed files with 1014 additions and 213 deletions

View File

@@ -197,18 +197,21 @@ fn samefile(a: str, b: str, why: str) void = {
"@test fn directory_import() void = { assert(foo.value() == 42); };\n"));
let testbins: []str = [strings.concat(td, "/test-c"),
strings.concat(td, "/test-w")];
let testworks: []str = [strings.concat(td, "/test-work-c"),
strings.concat(td, "/test-work-w")];
i = 0;
for (i < 2) {
let tav: []str = [testenv.driver(drivers[i * 2]), "test", "-c",
"-I", early, "-I", late, "-o", testbins[i], checks];
let tav: []str = [testenv.driver(drivers[i * 2]), "test", "-w",
testworks[i], "-I", early, "-I", late, "-o", testbins[i],
checks];
expectcode(td, strings.concat("test_build_", tags[i * 2]), tav, 0);
let trav: []str = [testbins[i]];
expectcode(td, strings.concat("test_run_", tags[i * 2]), trav, 0);
i += 1;
};
samefile(testbins[0], testbins[1], "directory-test binaries differ");
samefile(strings.concat(testbins[0], ".sepwork/example.foo.a"),
strings.concat(testbins[1], ".sepwork/example.foo.a"),
samefile(strings.concat(testworks[0], "/example.foo.a"),
strings.concat(testworks[1], "/example.foo.a"),
"directory-test dependency archives differ");
testenv.clean(td);
};

View File

@@ -814,7 +814,7 @@ fn rejectrow(td: str, label: str, src: str, expected: str) void = {
let av: []str = [launcher, limitstr, testenv.driver(stages[stagei]),
"test", "-c", "-w", work, "-I", tree,
"--ww-package-test", "test", "target", "target", "target",
"target_test", target, output, status, target];
"target_test", target, output, "-", status, target];
let out: testenv.commandout;
runenv(td, strings.concat("allocation-", stages[stagei], "-", tag),
av, env, &out);