summaryrefslogtreecommitdiffstats
path: root/js/src/jit-test/tests/basic/unboxed-property-enumeration.js
blob: 142d932dd3a8c86784163664f1edb5b9b4332e39 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
function O() {
    this.x = 1;
    this.y = 2;
}
function testUnboxed() {
    var arr = [];
    for (var i=0; i<100; i++)
	arr.push(new O);

    var o = arr[arr.length-1];
    o[0] = 0;
    o[2] = 2;
    var sym = Symbol();
    o[sym] = 1;
    o.z = 3;
    Object.defineProperty(o, '3', {value:1,enumerable:false,configurable:false,writable:false});
    o[4] = 4;

    var props = Reflect.ownKeys(o);
    assertEq(props[props.length-1], sym);

    assertEq(Object.getOwnPropertyNames(o).join(""), "0234xyz");
}
testUnboxed();