diff --git a/test/parallel/test-eventtarget-once-twice.js b/test/parallel/test-eventtarget-once-twice.js index 3358bab90e7569..f7fbc30ea17ec9 100644 --- a/test/parallel/test-eventtarget-once-twice.js +++ b/test/parallel/test-eventtarget-once-twice.js @@ -1,14 +1,24 @@ 'use strict'; -const common = require('../common'); -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')); +require('../common'); +const { once } = require('node:events'); +const { test } = require('node:test'); +const { setImmediate } = require('node:timers/promises'); + +test('should resolve `once` twice', async () => { + + const et = new EventTarget(); + + await Promise.all([ + (async () => { + await once(et, 'foo'); + await once(et, 'foo'); + })(), + + (async () => { + et.dispatchEvent(new Event('foo')); + await setImmediate(); + et.dispatchEvent(new Event('foo')); + })(), + ]); + });