blob: f15868437ce9a211c5970f6c2884e1b67be304bc [file] [log] [blame]
// Q: But who shall debug the debuggers? A: jimb
var log = '';
function addDebug(g, id) {
var debuggerGlobal = newGlobal();
debuggerGlobal.debuggee = g;
debuggerGlobal.id = id;
debuggerGlobal.print = function (s) { log += s; };
debuggerGlobal.eval(
'var dbg = new Debugger(debuggee);\n' +
'dbg.onDebuggerStatement = function () { print(id); debugger; print(id); };\n');
return debuggerGlobal;
}
var base = newGlobal();
var top = base;
for (var i = 0; i < 8; i++) // why have 2 debuggers when you can have 8
top = addDebug(top, i);
base.eval("debugger;");
assertEq(log, '0123456776543210');