You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

53 lines
1.7 KiB

'use strict';
const common = require('../common');
const net = require('net');
// This file tests the option handling of net.connect,
// net.createConnect, and new Socket().connect
common.refreshTmpDir();
const CLIENT_VARIANTS = 12;
// Test connect(path)
{
const prefix = `${common.PIPE}-net-connect-options-path`;
const serverPath = `${prefix}-server`;
let counter = 0;
const server = net.createServer()
.on('connection', common.mustCall(function(socket) {
socket.end('ok');
}, CLIENT_VARIANTS))
.listen(serverPath, common.mustCall(function() {
const getConnectCb = () => common.mustCall(function() {
const client = this;
client.end();
client.on('close', common.mustCall(function() {
counter++;
if (counter === CLIENT_VARIANTS) {
server.close();
}
}));
});
// CLIENT_VARIANTS depends on the following code
net.connect(serverPath, getConnectCb());
net.connect(serverPath)
.on('connect', getConnectCb());
net.createConnection(serverPath, getConnectCb());
net.createConnection(serverPath)
.on('connect', getConnectCb());
new net.Socket().connect(serverPath, getConnectCb());
new net.Socket().connect(serverPath)
.on('connect', getConnectCb());
net.connect({path: serverPath}, getConnectCb());
net.connect({path: serverPath})
.on('connect', getConnectCb());
net.createConnection({path: serverPath}, getConnectCb());
net.createConnection({path: serverPath})
.on('connect', getConnectCb());
new net.Socket().connect({path: serverPath}, getConnectCb());
new net.Socket().connect({path: serverPath})
.on('connect', getConnectCb());
}));
}