summaryrefslogtreecommitdiffstats
path: root/js/src/tests/non262/Tuple/constructor/call-method.js
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--js/src/tests/non262/Tuple/constructor/call-method.js17
1 files changed, 17 insertions, 0 deletions
diff --git a/js/src/tests/non262/Tuple/constructor/call-method.js b/js/src/tests/non262/Tuple/constructor/call-method.js
new file mode 100644
index 0000000000..8675240029
--- /dev/null
+++ b/js/src/tests/non262/Tuple/constructor/call-method.js
@@ -0,0 +1,17 @@
+// |reftest| skip-if(!this.hasOwnProperty("Tuple"))
+/*
+10.2 ECMAScript Function Objects
+...
+All ECMAScript function objects have the [[Call]] internal method defined here. ECMAScript functions that are also constructors in addition have the [[Construct]] internal method.
+*/
+
+assertEq(Tuple.call(), #[]);
+assertEq(Tuple.call(undefined), #[]);
+assertEq(Tuple.call(undefined, 1), #[1]);
+assertEq(Tuple.call(2, 1), #[1]);
+assertEq(Tuple.call(#[], 1), #[1]);
+assertEq(Tuple.call(undefined, 1, 2, 3), #[1,2,3]);
+assertEq(Tuple.call(6, 1, 2, 3), #[1,2,3]);
+assertEq(Tuple.call(#[1], 1, 2, 3), #[1,2,3]);
+
+reportCompare(0, 0);