js/src/jit-test/tests/debug/Script-clearBreakpoint-04.js

changeset 0
6474c204b198
equal deleted inserted replaced
-1:000000000000 0:5585ee7a6c2a
1 // clearBreakpoint clears breakpoints for the current Debugger object only.
2
3 var g = newGlobal();
4
5 var hits = 0;
6 var handler = {
7 hit: function (frame) {
8 hits++;
9 frame.script.clearBreakpoint(handler);
10 }
11 };
12
13 function attach(i) {
14 var dbg = Debugger(g);
15 dbg.onDebuggerStatement = function (frame) {
16 var s = frame.script;
17 var offs = s.getLineOffsets(g.line0 + 2);
18 for (var i = 0; i < offs.length; i++)
19 s.setBreakpoint(offs[i], handler);
20 };
21 }
22 for (var i = 0; i < 4; i++)
23 attach(i);
24
25 g.eval("var line0 = Error().lineNumber;\n" +
26 "debugger;\n" + // line0 + 1
27 "Math.sin(0);\n"); // line0 + 2
28 assertEq(hits, 4);

mercurial