summaryrefslogtreecommitdiffstats
path: root/dom/workers/test/transferable_worker.js
diff options
context:
space:
mode:
Diffstat (limited to 'dom/workers/test/transferable_worker.js')
-rw-r--r--dom/workers/test/transferable_worker.js40
1 files changed, 40 insertions, 0 deletions
diff --git a/dom/workers/test/transferable_worker.js b/dom/workers/test/transferable_worker.js
new file mode 100644
index 0000000000..d0fa41cad1
--- /dev/null
+++ b/dom/workers/test/transferable_worker.js
@@ -0,0 +1,40 @@
+/**
+ * Any copyright is dedicated to the Public Domain.
+ * http://creativecommons.org/publicdomain/zero/1.0/
+ */
+
+onmessage = function (event) {
+ if ("notEmpty" in event.data && "byteLength" in event.data.notEmpty) {
+ postMessage({
+ event: "W: NotEmpty object received: " + event.data.notEmpty.byteLength,
+ status: event.data.notEmpty.byteLength != 0,
+ last: false,
+ });
+ }
+
+ var ab = new ArrayBuffer(event.data.size);
+ postMessage({
+ event: "W: The size is: " + event.data.size + " == " + ab.byteLength,
+ status: ab.byteLength == event.data.size,
+ last: false,
+ });
+
+ postMessage(
+ {
+ event: "W: postMessage with arrayBuffer",
+ status: true,
+ notEmpty: ab,
+ ab,
+ bc: [ab, ab, { dd: ab }],
+ },
+ [ab]
+ );
+
+ postMessage({
+ event: "W: The size is: 0 == " + ab.byteLength,
+ status: ab.byteLength == 0,
+ last: false,
+ });
+
+ postMessage({ event: "W: last one!", status: true, last: true });
+};