summaryrefslogtreecommitdiffstats
path: root/js/xpconnect/tests/unit/test_xrayed_arguments.js
diff options
context:
space:
mode:
Diffstat (limited to 'js/xpconnect/tests/unit/test_xrayed_arguments.js')
-rw-r--r--js/xpconnect/tests/unit/test_xrayed_arguments.js16
1 files changed, 16 insertions, 0 deletions
diff --git a/js/xpconnect/tests/unit/test_xrayed_arguments.js b/js/xpconnect/tests/unit/test_xrayed_arguments.js
new file mode 100644
index 0000000000..fae0a0c865
--- /dev/null
+++ b/js/xpconnect/tests/unit/test_xrayed_arguments.js
@@ -0,0 +1,16 @@
+function run_test() {
+ var sbContent = Cu.Sandbox(null);
+ let xrayedArgs = sbContent.eval("(function(a, b) { return arguments; })('hi', 42)");
+
+ function checkArgs(a) {
+ Assert.equal(a.length, 2);
+ Assert.equal(a[0], 'hi');
+ Assert.equal(a[1], 42);
+ }
+
+ // Check Xrays to the args.
+ checkArgs(xrayedArgs);
+
+ // Make sure the spread operator works.
+ checkArgs([...xrayedArgs]);
+}