mirror of
https://github.com/denoland/deno.git
synced 2024-12-15 03:48:02 -05:00
9c0446567b
If a worker tried to flush large amounts of data right as the test was ending, it could cause the flush sync marker to get lost.
15 lines
516 B
JavaScript
15 lines
516 B
JavaScript
// Regression test for workers that post large amounts of output as a test is ending. This
|
|
// test should not deadlock, though the output is undefined.
|
|
Deno.test(async function workerOutput() {
|
|
console.log("Booting worker");
|
|
const code =
|
|
"self.postMessage(0); console.log(`hello from worker\n`.repeat(60000));";
|
|
const worker = new Worker(URL.createObjectURL(new Blob([code])), {
|
|
type: "module",
|
|
});
|
|
await new Promise((r) =>
|
|
worker.addEventListener("message", () => {
|
|
r();
|
|
})
|
|
);
|
|
});
|