| Index: test/mjsunit/harmony/array-concat.js
|
| diff --git a/test/mjsunit/harmony/array-concat.js b/test/mjsunit/harmony/array-concat.js
|
| index 738c81a45753d44653f0e0e6aabf6c4fbde4e4d0..1ab2dc28ac41b7d8db35d3f6d437ff52e818954f 100644
|
| --- a/test/mjsunit/harmony/array-concat.js
|
| +++ b/test/mjsunit/harmony/array-concat.js
|
| @@ -40,6 +40,40 @@
|
| })();
|
|
|
|
|
| +(function testConcatArrayLikeStringLength() {
|
| + "use strict";
|
| + var obj = {
|
| + "length": "6",
|
| + "1": "A",
|
| + "3": "B",
|
| + "5": "C"
|
| + };
|
| + obj[Symbol.isConcatSpreadable] = true;
|
| + var obj2 = { length: 3, "0": "0", "1": "1", "2": "2" };
|
| + var arr = ["X", "Y", "Z"];
|
| + assertEquals([void 0, "A", void 0, "B", void 0, "C",
|
| + { "length": 3, "0": "0", "1": "1", "2": "2" },
|
| + "X", "Y", "Z"], Array.prototype.concat.call(obj, obj2, arr));
|
| +})();
|
| +
|
| +
|
| +(function testConcatArrayLikeToLengthThrows() {
|
| + "use strict";
|
| + var obj = {
|
| + "length": {valueOf: null, toString: null},
|
| + "1": "A",
|
| + "3": "B",
|
| + "5": "C"
|
| + };
|
| + obj[Symbol.isConcatSpreadable] = true;
|
| + var obj2 = { length: 3, "0": "0", "1": "1", "2": "2" };
|
| + var arr = ["X", "Y", "Z"];
|
| + assertThrows(function() {
|
| + Array.prototype.concat.call(obj, obj2, arr);
|
| + }, TypeError);
|
| +})();
|
| +
|
| +
|
| (function testConcatHoleyArray() {
|
| "use strict";
|
| var arr = [];
|
|
|