|
1 // Hooks and Debugger.prototype.getNewestFrame produce the same Frame object. |
|
2 |
|
3 var g = newGlobal(); |
|
4 var dbg = Debugger(g); |
|
5 var hits = 0; |
|
6 var savedFrame, savedCallee; |
|
7 dbg.onDebuggerStatement = function (frame) { |
|
8 assertEq(frame, savedFrame); |
|
9 assertEq(frame.live, true); |
|
10 assertEq(frame.callee, savedCallee); |
|
11 hits++; |
|
12 }; |
|
13 g.h = function () { |
|
14 savedFrame = dbg.getNewestFrame(); |
|
15 savedCallee = savedFrame.callee; |
|
16 assertEq(savedCallee.name, "f"); |
|
17 }; |
|
18 g.eval("function f() { h(); debugger; }"); |
|
19 g.f(); |
|
20 assertEq(hits, 1); |