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

31 lines
444 B
JavaScript

// Options: --async-functions
// Async.
async function asyncThrow(e) {
if (true)
throw e;
await asyncYield();
}
function asyncYield() {
return asyncTimeout(0);
}
function asyncTimeout(ms) {
return new Promise((resolve) => {
setTimeout(resolve, ms);
});
}
(async function() {
var value;
try {
value = await asyncThrow(1);
fail("shouldn't get here");
} catch (e) {
assert.equal(1, e);
}
done();
})();