blob: afd9985b10d19c632216ec8a0c2390c7869cf8b5 [file] [log] [blame]
// Copyright 2009 the Sputnik authors. All rights reserved.
// This code is governed by the BSD license found in the LICENSE file.
/*---
esid: sec-properties-of-array-instances-length
info: |
If the length property is changed, every property whose name
is an array index whose value is not smaller than the new length is automatically deleted
es5id: 15.4.5.2_A3_T4
description: >
If new length greater than the name of every property whose name
is an array index
---*/
//CHECK#1
var x = [0, 1, 2];
x[4294967294] = 4294967294;
x.length = 2;
//CHECK#1
if (x[0] !== 0) {
$ERROR('#1: x = [0,1,2]; x[4294967294] = 4294967294; x.length = 2; x[0] === 0. Actual: ' + (x[0]));
}
//CHECK#2
if (x[1] !== 1) {
$ERROR('#2: x = [0,1,2]; x[4294967294] = 4294967294; x.length = 2; x[1] === 1. Actual: ' + (x[1]));
}
//CHECK#3
if (x[2] !== undefined) {
$ERROR('#3: x = [0,1,2]; x[4294967294] = 4294967294; x.length = 2; x[2] === undefined. Actual: ' + (x[2]));
}
//CHECK#4
if (x[4294967294] !== undefined) {
$ERROR('#4: x = [0,1,2]; x[4294967294] = 4294967294; x.length = 2; x[4294967294] === undefined. Actual: ' + (x[4294967294]));
}