|
1 // |jit-test| debug |
|
2 // Frame.prototype.script for eval frames. |
|
3 |
|
4 var g = newGlobal(); |
|
5 var dbg = new Debugger(g); |
|
6 |
|
7 // Apply |f| to each frame that is |skip| frames up from each frame that |
|
8 // executes a 'debugger' statement when evaluating |code| in the global g. |
|
9 function ApplyToFrameScript(code, skip, f) { |
|
10 dbg.onDebuggerStatement = function (frame) { |
|
11 while (skip-- > 0) |
|
12 frame = frame.older; |
|
13 assertEq(frame.type, "eval"); |
|
14 f(frame.script); |
|
15 }; |
|
16 g.eval(code); |
|
17 } |
|
18 |
|
19 ApplyToFrameScript('debugger;', 0, |
|
20 function (script) { |
|
21 assertEq(script instanceof Debugger.Script, true); |
|
22 }); |
|
23 ApplyToFrameScript("(function () { eval('debugger;'); })();", 0, |
|
24 function (script) { |
|
25 assertEq(script instanceof Debugger.Script, true); |
|
26 }); |