mirror of https://gitee.com/openkylin/nodejs.git
38 lines
1.1 KiB
JavaScript
38 lines
1.1 KiB
JavaScript
'use strict';
|
|
require('../common');
|
|
|
|
// This test ensures that `addRequest`'s Legacy API accepts `localAddress`
|
|
// correctly instead of accepting `path`.
|
|
// https://github.com/nodejs/node/issues/5051
|
|
|
|
const assert = require('assert');
|
|
const agent = require('http').globalAgent;
|
|
|
|
// Small stub just so we can call addRequest directly
|
|
const req = {
|
|
getHeader: () => {}
|
|
};
|
|
|
|
agent.maxSockets = 0;
|
|
|
|
// `localAddress` is used when naming requests / sockets while using the Legacy
|
|
// API. Port 8080 is hardcoded since this does not create a network connection.
|
|
agent.addRequest(req, 'localhost', 8080, '127.0.0.1');
|
|
assert.strictEqual(Object.keys(agent.requests).length, 1);
|
|
assert.strictEqual(
|
|
Object.keys(agent.requests)[0],
|
|
'localhost:8080:127.0.0.1');
|
|
|
|
// `path` is *not* used when naming requests / sockets.
|
|
// Port 8080 is hardcoded since this does not create a network connection
|
|
agent.addRequest(req, {
|
|
host: 'localhost',
|
|
port: 8080,
|
|
localAddress: '127.0.0.1',
|
|
path: '/foo'
|
|
});
|
|
assert.strictEqual(Object.keys(agent.requests).length, 1);
|
|
assert.strictEqual(
|
|
Object.keys(agent.requests)[0],
|
|
'localhost:8080:127.0.0.1');
|