summaryrefslogtreecommitdiffstats
path: root/js/src/jit-test/tests/xdr/runonce.js
diff options
context:
space:
mode:
Diffstat (limited to 'js/src/jit-test/tests/xdr/runonce.js')
-rw-r--r--js/src/jit-test/tests/xdr/runonce.js13
1 files changed, 13 insertions, 0 deletions
diff --git a/js/src/jit-test/tests/xdr/runonce.js b/js/src/jit-test/tests/xdr/runonce.js
new file mode 100644
index 0000000000..2aa742c09b
--- /dev/null
+++ b/js/src/jit-test/tests/xdr/runonce.js
@@ -0,0 +1,13 @@
+load(libdir + "asserts.js")
+
+// JS::EncodeScript cannot be use for run-once scripts.
+evaluate(cacheEntry(""), { saveBytecode: true });
+evaluate(cacheEntry(""), { saveBytecode: true, isRunOnce: false });
+assertErrorMessage(() => {
+ evaluate(cacheEntry(""), { saveBytecode: true, isRunOnce: true });
+}, Error, "run-once script are not supported by XDR");
+
+// Incremental XDR doesn't have any of these restrictions.
+evaluate(cacheEntry(""), { saveIncrementalBytecode: true });
+evaluate(cacheEntry(""), { saveIncrementalBytecode: true, isRunOnce: false });
+evaluate(cacheEntry(""), { saveIncrementalBytecode: true, isRunOnce: true });