|
1 // Breakpoints work in non-compile-and-go code. Bug 738479. |
|
2 |
|
3 var g = newGlobal(); |
|
4 g.s = ''; |
|
5 var dbg = new Debugger; |
|
6 var gw = dbg.addDebuggee(g); |
|
7 g.evaluate( |
|
8 "function f() {\n" + // fscript.startLine |
|
9 " s += 'a';\n" + // fscript.startLine + 1 |
|
10 " s += 'b';\n" + // fscript.startLine + 2 |
|
11 "}\n", |
|
12 {compileAndGo: false}); |
|
13 |
|
14 var fscript = gw.makeDebuggeeValue(g.f).script; |
|
15 var handler = {hit: function (frame) { g.s += '1'; }}; |
|
16 for (var pc of fscript.getLineOffsets(fscript.startLine + 2)) |
|
17 fscript.setBreakpoint(pc, handler); |
|
18 |
|
19 g.f(); |
|
20 |
|
21 assertEq(g.s, "a1b"); |