summaryrefslogtreecommitdiffstats
path: root/js/xpconnect/tests/unit/lazy_non_shared_in_worker.js
diff options
context:
space:
mode:
Diffstat (limited to 'js/xpconnect/tests/unit/lazy_non_shared_in_worker.js')
-rw-r--r--js/xpconnect/tests/unit/lazy_non_shared_in_worker.js28
1 files changed, 28 insertions, 0 deletions
diff --git a/js/xpconnect/tests/unit/lazy_non_shared_in_worker.js b/js/xpconnect/tests/unit/lazy_non_shared_in_worker.js
new file mode 100644
index 0000000000..47e1dede92
--- /dev/null
+++ b/js/xpconnect/tests/unit/lazy_non_shared_in_worker.js
@@ -0,0 +1,28 @@
+onmessage = event => {
+ const lazy1 = {};
+ const lazy2 = {};
+
+ ChromeUtils.defineESModuleGetters(lazy1, {
+ GetX: "resource://test/esm_lazy-1.sys.mjs",
+ }, {
+ global: "current",
+ });
+
+ ChromeUtils.defineESModuleGetters(lazy2, {
+ GetX: "resource://test/esm_lazy-1.sys.mjs",
+ }, {
+ global: "contextual",
+ });
+
+ lazy1.GetX; // delazify before import.
+ lazy2.GetX; // delazify before import.
+
+ const ns = ChromeUtils.importESModule("resource://test/esm_lazy-1.sys.mjs", {
+ global: "current",
+ });
+
+ const equal1 = ns.GetX == lazy1.GetX;
+ const equal2 = ns.GetX == lazy2.GetX;
+
+ postMessage({ equal1, equal2 });
+};