| // Debugger.Object basics |
| |
| var g = newGlobal(); |
| var dbg = Debugger(g); |
| var hits = 0; |
| dbg.onDebuggerStatement = function (frame) { |
| assertEq(frame.arguments[0], frame.callee); |
| assertEq(Object.getPrototypeOf(frame.arguments[0]), Debugger.Object.prototype); |
| assertEq(frame.arguments[0] instanceof Debugger.Object, true); |
| assertEq(frame.arguments[0] !== frame.arguments[1], true); |
| assertEq(Object.getPrototypeOf(frame.arguments[1]), Debugger.Object.prototype); |
| assertEq(frame.arguments[1] instanceof Debugger.Object, true); |
| hits++; |
| }; |
| |
| g.eval("var obj = {}; function f(a, b) { debugger; } f(f, obj);"); |
| assertEq(hits, 1); |