summaryrefslogtreecommitdiffstats
path: root/js/src/tests/non262/Tuple/from/elements-added-after.js
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--js/src/tests/non262/Tuple/from/elements-added-after.js29
1 files changed, 29 insertions, 0 deletions
diff --git a/js/src/tests/non262/Tuple/from/elements-added-after.js b/js/src/tests/non262/Tuple/from/elements-added-after.js
new file mode 100644
index 0000000000..d0c045ffb6
--- /dev/null
+++ b/js/src/tests/non262/Tuple/from/elements-added-after.js
@@ -0,0 +1,29 @@
+// |reftest| skip-if(!this.hasOwnProperty("Tuple"))
+var tupleIndex = -1;
+var originalLength = 7;
+var obj = {
+ length: originalLength,
+ 0: 2,
+ 1: 4,
+ 2: 8,
+ 3: 16,
+ 4: 32,
+ 5: 64,
+ 6: 128
+};
+var tuple = #[2, 4, 8, 16, 32, 64, 128];
+
+function mapFn(value, index) {
+ tupleIndex++;
+ assertEq(value, obj[tupleIndex]);
+ assertEq(index, tupleIndex);
+ obj[originalLength + tupleIndex] = 2 * tupleIndex + 1;
+
+ return obj[tupleIndex];
+}
+
+
+var t = Tuple.from(obj, mapFn);
+assertEq(t, tuple);
+
+reportCompare(0, 0);