2015-01-04 19:40:09 +11:00

23 lines
420 B
JavaScript

var finallyVisited = false;
function* test() {
try {
yield 42;
} finally {
finallyVisited = true;
}
}
var it = test();
assert.deepEqual({value: 42, done: false}, it.next());
assert.isFalse(finallyVisited);
assert.deepEqual({value: undefined, done: true}, it.next());
assert.isTrue(finallyVisited);
finallyVisited = false;
for (var i of test()) {
assert.equal(42, i);
}
assert.isTrue(finallyVisited);