node/test/parallel/test-eventtarget-once-twice.js
Anna Henningsen e18afe45d2 events: fix add-remove-add case in EventTarget
Make sure that listeners are added properly if there has previously
been one but currently are none for a given event type.

PR-URL: https://github.com/nodejs/node/pull/34056
Reviewed-By: James M Snell <jasnell@gmail.com>
Reviewed-By: Rich Trott <rtrott@gmail.com>
2020-06-25 19:28:45 -07:00

19 lines
431 B
JavaScript

// Flags: --expose-internals --no-warnings
'use strict';
const common = require('../common');
const {
Event,
EventTarget,
} = require('internal/event_target');
const { once } = require('events');
const et = new EventTarget();
(async function() {
await once(et, 'foo');
await once(et, 'foo');
})().then(common.mustCall());
et.dispatchEvent(new Event('foo'));
setImmediate(() => {
et.dispatchEvent(new Event('foo'));
});