diff options
Diffstat (limited to 'js/src/tests/ecma/Array/15.4.4.3-2.js')
-rw-r--r-- | js/src/tests/ecma/Array/15.4.4.3-2.js | 39 |
1 files changed, 39 insertions, 0 deletions
diff --git a/js/src/tests/ecma/Array/15.4.4.3-2.js b/js/src/tests/ecma/Array/15.4.4.3-2.js new file mode 100644 index 000000000..9b01737c2 --- /dev/null +++ b/js/src/tests/ecma/Array/15.4.4.3-2.js @@ -0,0 +1,39 @@ +var arr = [0,1,,3,4]; +Object.prototype[2] = 2; + +assertEq(arr.join(""), "01234"); +assertEq(arr.join(","), "0,1,2,3,4"); + +arr[2] = "porkchops"; +assertEq(arr.join("*"), "0*1*porkchops*3*4"); + +delete Object.prototype[2]; +assertEq(arr.join("*"), "0*1*porkchops*3*4"); + +delete arr[2]; +assertEq(arr.join("*"), "0*1**3*4"); + +Object.prototype[2] = null; +assertEq(arr.join("*"), "0*1**3*4"); +Object.prototype[2] = undefined; +assertEq(arr.join("*"), "0*1**3*4"); +arr[2] = null; +assertEq(arr.join("*"), "0*1**3*4"); +arr[2] = undefined; +assertEq(arr.join("*"), "0*1**3*4"); + +var arr = new Array(10); +assertEq(arr.join(""), ""); +assertEq(arr.join(), ",,,,,,,,,"); +assertEq(arr.join("|"), "|||||||||"); + +arr[2] = "doubt"; +assertEq(arr.join(","), ",,doubt,,,,,,,"); + +arr[9] = "failure"; +assertEq(arr.join(","), ",,doubt,,,,,,,failure"); + +delete arr[2]; +assertEq(arr.join(","), ",,,,,,,,,failure"); + +reportCompare(true, true); |