summaryrefslogtreecommitdiff
path: root/cli/tests/testdata
diff options
context:
space:
mode:
Diffstat (limited to 'cli/tests/testdata')
-rw-r--r--cli/tests/testdata/worker_message_before_close.js16
-rw-r--r--cli/tests/testdata/worker_message_before_close.js.out8
-rw-r--r--cli/tests/testdata/workers/message_before_close.js6
3 files changed, 30 insertions, 0 deletions
diff --git a/cli/tests/testdata/worker_message_before_close.js b/cli/tests/testdata/worker_message_before_close.js
new file mode 100644
index 000000000..6a9149af1
--- /dev/null
+++ b/cli/tests/testdata/worker_message_before_close.js
@@ -0,0 +1,16 @@
+for (let i = 0; i < 4; i++) {
+ const worker = new Worker(
+ new URL("./workers/message_before_close.js", import.meta.url).href,
+ { type: "module", name: String(i) },
+ );
+
+ worker.addEventListener("message", (message) => {
+ // Only print responses after all reception logs.
+ setTimeout(() => {
+ console.log("response from worker %d received", message.data);
+ }, 500);
+ });
+ worker.postMessage(i);
+}
+
+export {};
diff --git a/cli/tests/testdata/worker_message_before_close.js.out b/cli/tests/testdata/worker_message_before_close.js.out
new file mode 100644
index 000000000..f1cc558a2
--- /dev/null
+++ b/cli/tests/testdata/worker_message_before_close.js.out
@@ -0,0 +1,8 @@
+message received in worker 0
+message received in worker 1
+message received in worker 2
+message received in worker 3
+response from worker 0 received
+response from worker 1 received
+response from worker 2 received
+response from worker 3 received
diff --git a/cli/tests/testdata/workers/message_before_close.js b/cli/tests/testdata/workers/message_before_close.js
new file mode 100644
index 000000000..0213abcb3
--- /dev/null
+++ b/cli/tests/testdata/workers/message_before_close.js
@@ -0,0 +1,6 @@
+self.onmessage = (params) => {
+ const workerId = params.data;
+ console.log("message received in worker %d", workerId);
+ self.postMessage(workerId);
+ self.close();
+};