blob: a72876cdd4c65989a222ad9fb37c7a0b7ceda2b7 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
|
// frame.eval throws if frame is a generator frame that isn't currently on the stack
load(libdir + "asserts.js");
var g = newGlobal();
g.eval("function gen(a) { debugger; yield a; }");
g.eval("function test() { debugger; }");
var dbg = new Debugger(g);
var genframe;
var hits = 0;
dbg.onDebuggerStatement = function (frame) {
if (frame.callee.name == 'gen')
genframe = frame;
else
assertThrowsInstanceOf(function () { genframe.eval("a"); }, Error);
hits++;
};
g.eval("var it = gen(42); assertEq(it.next(), 42); test();");
assertEq(hits, 2);
|