testplane
Version:
Tests framework based on mocha and wdio
16 lines • 685 B
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.AsyncEmitter = void 0;
const events_1 = require("events");
const promise_1 = require("../../utils/promise");
class AsyncEmitter extends events_1.EventEmitter {
async emitAndWait(event, ...args) {
const results = await Promise.allSettled(this.listeners(event).map(l => (0, promise_1.promiseMethod)(l).apply(this, args)));
const rejected = results.find(({ status }) => status === "rejected");
return rejected
? Promise.reject(rejected.reason)
: results.map(r => r.value);
}
}
exports.AsyncEmitter = AsyncEmitter;
//# sourceMappingURL=index.js.map