diff --git a/test/parallel/test-quic-socket-close-event-error-async.js b/test/parallel/test-quic-socket-close-event-error-async.js new file mode 100644 index 00000000000000..3b4baf595a6618 --- /dev/null +++ b/test/parallel/test-quic-socket-close-event-error-async.js @@ -0,0 +1,31 @@ +// Flags: --no-warnings +'use strict'; + +const common = require('../common'); +if (!common.hasQuic) + common.skip('missing quic'); + +const assert = require('assert'); +const { + key, + cert, + ca, +} = require('../common/quic'); + +const { createQuicSocket } = require('net'); + +const options = { key, cert, ca, alpn: 'zzz' }; + +const server = createQuicSocket({ server: options }); + +server.on('error', common.mustNotCall()); + +server.on('close', common.mustCall(async () => { + throw new Error('boom'); +})); + +process.on('uncaughtException', (error) => { + assert.strictEqual(error.message, 'boom'); +}); + +server.destroy(); diff --git a/test/parallel/test-quic-socket-close-event-error.js b/test/parallel/test-quic-socket-close-event-error.js new file mode 100644 index 00000000000000..5160698518f345 --- /dev/null +++ b/test/parallel/test-quic-socket-close-event-error.js @@ -0,0 +1,31 @@ +// Flags: --no-warnings +'use strict'; + +const common = require('../common'); +if (!common.hasQuic) + common.skip('missing quic'); + +const assert = require('assert'); +const { + key, + cert, + ca, +} = require('../common/quic'); + +const { createQuicSocket } = require('net'); + +const options = { key, cert, ca, alpn: 'zzz' }; + +const server = createQuicSocket({ server: options }); + +server.on('error', common.mustNotCall()); + +server.on('close', common.mustCall(() => { + throw new Error('boom'); +})); + +process.on('uncaughtException', (error) => { + assert.strictEqual(error.message, 'boom'); +}); + +server.destroy();