Single-directory package-test planner: discovers *.ww, groups white-box and external <pkg>_test sources, composes the combined test package, builds it through the sibling ww driver, and runs it with the runtime's -package/-list/-timeout-ms contract. test/package holds its E2E corpus and the manual runtime fixture set.
27 lines
637 B
Plaintext
27 lines
637 B
Plaintext
package runtime_lingering_descendant_test;
|
|
|
|
import os;
|
|
|
|
@test fn returning_test_clears_descendant() void = {
|
|
let fds: [2]i32;
|
|
assert(os.pipe(&fds) == 0);
|
|
let pid: i32 = os.fork();
|
|
assert(pid >= 0);
|
|
if (pid == 0) {
|
|
os.close(fds[0]);
|
|
let mask: u64 = 1u64 << ((os.SIGTERM - 1): u64);
|
|
if (os.sigprocmask(os.SIG_BLOCK, &mask, nil: *u64) != 0) {
|
|
os.exit(120);
|
|
};
|
|
let ready: u8 = 1u8;
|
|
if (os.write(fds[1], &ready, 1u64) != 1i64) { os.exit(121); };
|
|
os.close(fds[1]);
|
|
for (true) { };
|
|
};
|
|
os.close(fds[1]);
|
|
let ready: u8 = 0u8;
|
|
assert(os.read(fds[0], &ready, 1u64) == 1i64);
|
|
os.close(fds[0]);
|
|
assert(ready == 1u8);
|
|
};
|