Push a series of events to an emitter. Useful for testing.
$ npm install --save array-to-events
;;// pushes both a 'foo' and 'bar' event (with specified arguments) to the emitter.
arrayToEvents(targetEmitter, eventArray, [options])
Emit a series of events on
targetEmitter. Depending on the specified options, events will be emitted synchronously or at specified intervals. In async mode, a
stop callback is returned that, when called, will prevent further events from being emitted.
The emitter where events will be pushed
two dimensional array
An array of event argument arrays. Must be a two dimensional array. The first value of each child array must be a
string value with the event name. Additional array members will be passed as arguments when the array is triggered.
[ ['foo', 1], ['bar', 2] ]
The above defines two events. First a
foo event will be emitted with argument
1. Then a
bar event will be emitted with argument
Default: it depends
true, all events will be emitted immediately and synchronously, one right after the other. It defaults to
true unless the
delay option or
done callback are specified (in which case it defaults to
false). Explicitly setting it to
true will cause the
delay option to be ignored.
a number or the string "immediate"
If set to
"immediate", events fire asynchronously with a minimal delay in between (
setImmediate is used to schedule the next event).
If set to a
number, events are scheduled every
delay milliseconds (via
An optional callback to be executed when all events have finished. The first argument will contain any error thrown during execution (not currently implemented). The second argument (
finished) will be
true if every event was emitted,
false if the event stream was stopped prematurely using the
MIT © James Talmage