diff options
Diffstat (limited to 'js/src/tests/non262/Tuple/from/elements-deleted-after.js')
-rw-r--r-- | js/src/tests/non262/Tuple/from/elements-deleted-after.js | 24 |
1 files changed, 24 insertions, 0 deletions
diff --git a/js/src/tests/non262/Tuple/from/elements-deleted-after.js b/js/src/tests/non262/Tuple/from/elements-deleted-after.js new file mode 100644 index 0000000000..b4f6f24593 --- /dev/null +++ b/js/src/tests/non262/Tuple/from/elements-deleted-after.js @@ -0,0 +1,24 @@ +// |reftest| skip-if(!this.hasOwnProperty("Tuple")) +var originalTuple = #[0, 1, -2, 4, -8, 16]; +var array = [0,1,-2,4,-8,16]; +var t = #[]; +var arrayIndex = -1; + +function mapFn(value, index) { + this.arrayIndex++; + assertEq(value, array[this.arrayIndex]); + assertEq(index, this.arrayIndex); + array.splice(array.length - 1, 1); + return 127; +} + + +t = Tuple.from(array, mapFn, this); + +assertEq(t.length, originalTuple.length / 2); + +for (var j = 0; j < originalTuple.length / 2; j++) { + assertEq(t[j], 127); +} + +reportCompare(0, 0); |