()
| 188 | } |
| 189 | |
| 190 | async function iterableThrow() { |
| 191 | const ee = new EventEmitter(); |
| 192 | const iterable = on(ee, 'foo'); |
| 193 | |
| 194 | process.nextTick(() => { |
| 195 | ee.emit('foo', 'bar'); |
| 196 | ee.emit('foo', 42); // lost in the queue |
| 197 | iterable.throw(_err); |
| 198 | }); |
| 199 | |
| 200 | const _err = new Error('kaboom'); |
| 201 | let thrown = false; |
| 202 | |
| 203 | assert.throws(() => { |
| 204 | // No argument |
| 205 | iterable.throw(); |
| 206 | }, { |
| 207 | message: 'The "EventEmitter.AsyncIterator" property must be' + |
| 208 | ' an instance of Error. Received undefined', |
| 209 | name: 'TypeError', |
| 210 | }); |
| 211 | |
| 212 | const expected = [['bar'], [42]]; |
| 213 | |
| 214 | try { |
| 215 | for await (const event of iterable) { |
| 216 | assert.deepStrictEqual(event, expected.shift()); |
| 217 | } |
| 218 | } catch (err) { |
| 219 | thrown = true; |
| 220 | assert.strictEqual(err, _err); |
| 221 | } |
| 222 | assert.strictEqual(thrown, true); |
| 223 | assert.strictEqual(expected.length, 0); |
| 224 | assert.strictEqual(ee.listenerCount('foo'), 0); |
| 225 | assert.strictEqual(ee.listenerCount('error'), 0); |
| 226 | } |
| 227 | |
| 228 | async function eventTarget() { |
| 229 | const et = new EventTarget(); |
nothing calls this directly
no test coverage detected
searching dependent graphs…