breakpoint-01.js (617B)
1 // Basic breakpoint test. 2 3 var g = newGlobal({newCompartment: true}); 4 g.s = ''; 5 var handler = { 6 hit: function (frame) { 7 assertEq(this, handler); 8 g.s += '1'; 9 } 10 }; 11 var dbg = Debugger(g); 12 dbg.onDebuggerStatement = function (frame) { 13 g.s += '0'; 14 var line0 = frame.script.getOffsetLocation(frame.offset).lineNumber; 15 var offs = frame.script.getLineOffsets(line0 + 2); 16 for (var i = 0; i < offs.length; i++) 17 frame.script.setBreakpoint(offs[i], handler); 18 }; 19 g.eval("debugger;\n" + 20 "s += 'a';\n" + // line0 + 1 21 "s += 'b';\n"); // line0 + 2 22 assertEq(g.s, "0a1b");