29 lines
411 B
JavaScript

// Options: --async-generators --for-on --async-functions
// Async.
async function* f() {
for (var i = 1; i < 4; ++i) {
yield i;
}
}
(async function() {
var list = [];
var g = f();
try {
for (var i on g) {
if (i == 2) {
throw 'ex';
}
list.push(i);
}
} catch (ex) {
assert.equal(ex, 'ex');
}
assert.deepEqual(list, [1]);
done();
})().catch(done);