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

http://github.com/zpao/v8monkey · JavaScript · 19 lines · 17 code · 1 blank · 1 comment · 1 complexity · e272df6b2fc7146d009e4ca1b26dcfa9 MD5 · raw file

  1. // A breakpoint handler may clear itself.
  2. var g = newGlobal('new-compartment');
  3. var bphits = 0;
  4. var handler = {hit: function (frame) { frame.script.clearBreakpoint(this); bphits++; }};
  5. var dbg = Debugger(g);
  6. var hits = 0;
  7. dbg.onDebuggerStatement = function (frame) {
  8. var offs = frame.script.getLineOffsets(g.line0 + 3);
  9. for (var i = 0; i < offs.length; i++)
  10. frame.script.setBreakpoint(offs[i], handler);
  11. hits++;
  12. };
  13. g.eval("var line0 = Error().lineNumber;\n" +
  14. "debugger;\n" + // line0 + 1
  15. "for (var i = 0; i < 4; i++)\n" + // line0 + 2
  16. " result = 'ok';\n"); // line0 + 3
  17. assertEq(hits, 1);
  18. assertEq(bphits, 1);