| Index: test/mjsunit/array-length.js
|
| ===================================================================
|
| --- test/mjsunit/array-length.js (revision 3964)
|
| +++ test/mjsunit/array-length.js (working copy)
|
| @@ -26,7 +26,7 @@
|
| // OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
|
|
| var a = [0,1,2,3];
|
| -a.length = 0;
|
| +assertEquals(0, a.length = 0);
|
|
|
| assertEquals('undefined', typeof a[0]);
|
| assertEquals('undefined', typeof a[1]);
|
| @@ -35,7 +35,7 @@
|
|
|
|
|
| var a = [0,1,2,3];
|
| -a.length = 2;
|
| +assertEquals(2, a.length = 2);
|
|
|
| assertEquals(0, a[0]);
|
| assertEquals(1, a[1]);
|
| @@ -50,7 +50,7 @@
|
| a[2000000] = 2000000;
|
|
|
| assertEquals(2000001, a.length);
|
| -a.length = 0;
|
| +assertEquals(0, a.length = 0);
|
| assertEquals(0, a.length);
|
| assertEquals('undefined', typeof a[0]);
|
| assertEquals('undefined', typeof a[1000]);
|
| @@ -65,7 +65,7 @@
|
| a[2000000] = 2000000;
|
|
|
| assertEquals(2000001, a.length);
|
| -a.length = 2000;
|
| +assertEquals(2000, a.length = 2000);
|
| assertEquals(2000, a.length);
|
| assertEquals(0, a[0]);
|
| assertEquals(1000, a[1000]);
|
| @@ -91,7 +91,7 @@
|
| assertEquals(Math.pow(2,32)-2, a[Math.pow(2,32)-2]);
|
|
|
| assertEquals(Math.pow(2,32)-1, a.length);
|
| -a.length = Math.pow(2,30)+1; // not a smi!
|
| +assertEquals(Math.pow(2,30) + 1, a.length = Math.pow(2,30)+1); // not a smi!
|
| assertEquals(Math.pow(2,30)+1, a.length);
|
|
|
| assertEquals(0, a[0]);
|
| @@ -102,10 +102,20 @@
|
|
|
|
|
| var a = new Array();
|
| -a.length = new Number(12);
|
| +assertEquals(12, a.length = new Number(12));
|
| assertEquals(12, a.length);
|
|
|
|
|
| var o = { length: -23 };
|
| Array.prototype.pop.apply(o);
|
| assertEquals(4294967272, o.length);
|
| +
|
| +// Check case of compiled stubs.
|
| +var a = [];
|
| +for (var i = 0; i < 7; i++) {
|
| + assertEquals(3, a.length = 3);
|
| +
|
| + var t = 239;
|
| + t = a.length = 7;
|
| + assertEquals(7, t);
|
| +}
|
|
|