1.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 1.2 +++ b/js/src/jit-test/tests/debug/breakpoint-04.js Wed Dec 31 06:09:35 2014 +0100 1.3 @@ -0,0 +1,30 @@ 1.4 +// Hitting a breakpoint with no hit method does nothing. 1.5 + 1.6 +var g = newGlobal(); 1.7 +g.s = ''; 1.8 +g.eval("var line0 = Error().lineNumber;\n" + 1.9 + "function f() {\n" + // line0 + 1 1.10 + " debugger;\n" + // line0 + 2 1.11 + " s += 'x';\n" + // line0 + 3 1.12 + "}\n") 1.13 +var dbg = Debugger(g); 1.14 +var bp = []; 1.15 +dbg.onDebuggerStatement = function (frame) { 1.16 + g.s += 'D'; 1.17 + var arr = frame.script.getLineOffsets(g.line0 + 3); 1.18 + for (var i = 0; i < arr.length; i++) { 1.19 + var obj = {}; 1.20 + bp[i] = obj; 1.21 + frame.script.setBreakpoint(arr[i], obj); 1.22 + } 1.23 +}; 1.24 + 1.25 +g.f(); 1.26 +assertEq(g.s, "Dx"); 1.27 + 1.28 +dbg.onDebuggerStatement = undefined; 1.29 + 1.30 +for (var i = 0; i < bp.length; i++) 1.31 + bp[i].hit = function () { g.s += 'B'; }; 1.32 +g.f(); 1.33 +assertEq(g.s, "DxBx");