Object-proto.js (704B)
1 // Debugger.Object.prototype.proto 2 var g = newGlobal({newCompartment: true}); 3 var dbgeval = function () { 4 var dbg = new Debugger(g); 5 var hits = 0; 6 g.eval("function f() { debugger; }"); 7 var lastval; 8 dbg.onDebuggerStatement = function (frame) { lastval = frame.arguments[0]; }; 9 return function dbgeval(s) { 10 g.eval("f(" + s + ");"); 11 return lastval; 12 }; 13 }(); 14 15 var Op = dbgeval("Object.prototype"); 16 assertEq(Op.proto, null); 17 assertEq(dbgeval("({})").proto, Op); 18 19 var Ap = dbgeval("[]").proto; 20 assertEq(Ap, dbgeval("Array.prototype")); 21 assertEq(Ap.proto, Op); 22 23 assertEq(dbgeval("Object").proto, dbgeval("Function.prototype"));