Frame-identity-02.js (617B)
1 // Check that {throw:} resumption kills the current stack frame. 2 3 load(libdir + "asserts.js"); 4 5 var g = newGlobal({newCompartment: true}); 6 g.debuggeeGlobal = this; 7 g.eval("(" + function () { 8 var dbg = new Debugger(debuggeeGlobal); 9 var prev = null; 10 dbg.onDebuggerStatement = function (frame) { 11 assertEq(frame === prev, false); 12 if (prev) 13 assertEq(prev.onStack, false); 14 prev = frame; 15 return {throw: debuggeeGlobal.i}; 16 }; 17 } + ")();"); 18 19 function f() { debugger; } 20 for (var i = 0; i < 10; i++) 21 assertThrowsValue(f, i);