|
1 // obj.defineProperty works when obj's referent is a wrapper. |
|
2 |
|
3 var x = {}; |
|
4 var g = newGlobal(); |
|
5 g.x = x; |
|
6 var dbg = new Debugger; |
|
7 var gw = dbg.addDebuggee(g); |
|
8 var xw = gw.getOwnPropertyDescriptor("x").value; |
|
9 xw.defineProperty("p", {configurable: true, enumerable: true, writable: true, value: gw}); |
|
10 assertEq(x.p, g); |
|
11 |
|
12 var desc = Object.getOwnPropertyDescriptor(x, "p"); |
|
13 assertEq(desc.configurable, true); |
|
14 assertEq(desc.enumerable, true); |
|
15 assertEq(desc.writable, true); |
|
16 assertEq(desc.value, g); |