summaryrefslogtreecommitdiffstats
path: root/js/src/jit-test/tests/debug/Object-getOwnPropertyDescriptor-05.js
blob: b2223076e18c62f456116b4bc7a63cbf6cf4b0a5 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
// obj.getOwnPropertyDescriptor presents getters and setters as Debugger.Object objects.

var g = newGlobal({newCompartment: true});
g.S = function foreignFunction(v) {};
g.eval("var a = {};\n" +
       "function G() {}\n" +
       "Object.defineProperty(a, 'p', {get: G, set: S})");

var dbg = new Debugger;
var gdo = dbg.addDebuggee(g);
var desc = gdo.getOwnPropertyDescriptor("a").value.getOwnPropertyDescriptor("p");
assertEq(desc.enumerable, false);
assertEq(desc.configurable, false);
assertEq("value" in desc, false);
assertEq("writable" in desc, false);
assertEq(desc.get, gdo.getOwnPropertyDescriptor("G").value);
assertEq(desc.set, gdo.getOwnPropertyDescriptor("S").value);