| 'use strict'; |
| const common = require('../common'); |
| const assert = require('assert'); |
| const net = require('net'); |
| |
| { |
| const server = net.createServer(); |
| |
| server.listen(common.mustCall(() => { |
| const port = server.address().port; |
| const client = net.connect({ port }, common.mustCall(() => { |
| client.on('error', common.mustCall((err) => { |
| server.close(); |
| assert.strictEqual(err.constructor, Error); |
| assert.strictEqual(err.message, 'write EBADF'); |
| })); |
| client._handle.close(); |
| client.write('foo'); |
| })); |
| })); |
| } |
| |
| { |
| const server = net.createServer(); |
| |
| server.listen(common.mustCall(() => { |
| const port = server.address().port; |
| const client = net.connect({ port }, common.mustCall(() => { |
| client.on('error', common.expectsError({ |
| code: 'ERR_SOCKET_CLOSED', |
| message: 'Socket is closed', |
| name: 'Error' |
| })); |
| |
| server.close(); |
| |
| client._handle.close(); |
| client._handle = null; |
| client.write('foo'); |
| })); |
| })); |
| } |