1// Flags: --expose-internals 2'use strict'; 3const common = require('../common'); 4const assert = require('assert'); 5const JSStreamWrap = require('internal/js_stream_socket'); 6const { Duplex } = require('stream'); 7 8process.once('uncaughtException', common.mustCall((err) => { 9 assert.strictEqual(err.message, 'exception!'); 10})); 11 12const socket = new JSStreamWrap(new Duplex({ 13 read: common.mustNotCall(), 14 write: common.mustCall((buffer, data, cb) => { 15 throw new Error('exception!'); 16 }) 17})); 18 19socket.end('foo'); 20socket.on('error', common.expectsError({ 21 name: 'Error', 22 message: 'write EPROTO' 23})); 24