summaryrefslogtreecommitdiff
path: root/tests/testdata/workers/worker_event_handlers.js
diff options
context:
space:
mode:
Diffstat (limited to 'tests/testdata/workers/worker_event_handlers.js')
-rw-r--r--tests/testdata/workers/worker_event_handlers.js26
1 files changed, 26 insertions, 0 deletions
diff --git a/tests/testdata/workers/worker_event_handlers.js b/tests/testdata/workers/worker_event_handlers.js
new file mode 100644
index 000000000..5e457cd2e
--- /dev/null
+++ b/tests/testdata/workers/worker_event_handlers.js
@@ -0,0 +1,26 @@
+self.onmessage = (evt) => {
+ console.log("Target from self.onmessage:", String(evt.target));
+};
+
+self.addEventListener("message", (evt) => {
+ console.log("Target from message event listener:", String(evt.target));
+
+ // Throw an error here so the global's error event will fire.
+ throw new Error("Some error message");
+});
+
+self.onerror = (...args) => {
+ // Take the last 100 characters so the filename doesn't get truncated
+ // depending on the dev's FS structure.
+ args = args.map((v) => typeof v == "string" ? v.slice(-100) : v);
+ console.log("Arguments from self.onerror:", args);
+ return true;
+};
+
+self.addEventListener("error", (evt) => {
+ // Returning true from self.onerror means that subsequent event listeners
+ // should see the event as canceled.
+ console.log("Is event canceled?:", evt.defaultPrevented);
+
+ self.close();
+});