mirror of
https://github.com/oven-sh/bun
synced 2026-02-09 10:28:47 +00:00
fix test-http-agent-getname.js (#19609)
This commit is contained in:
@@ -96,14 +96,23 @@ Agent.prototype.createConnection = function () {
|
||||
};
|
||||
|
||||
Agent.prototype.getName = function (options = kEmptyObject) {
|
||||
let name = `http:${options.host || "localhost"}:`;
|
||||
if (options.port) name += options.port;
|
||||
let name = options.host || "localhost";
|
||||
name += ":";
|
||||
if (options.localAddress) name += options.localAddress;
|
||||
if (options.port) {
|
||||
name += options.port;
|
||||
}
|
||||
name += ":";
|
||||
if (options.localAddress) {
|
||||
name += options.localAddress;
|
||||
}
|
||||
// Pacify parallel/test-http-agent-getname by only appending
|
||||
// the ':' when options.family is set.
|
||||
if (options.family === 4 || options.family === 6) name += `:${options.family}`;
|
||||
if (options.socketPath) name += `:${options.socketPath}`;
|
||||
if (options.family === 4 || options.family === 6) {
|
||||
name += `:${options.family}`;
|
||||
}
|
||||
if (options.socketPath) {
|
||||
name += `:${options.socketPath}`;
|
||||
}
|
||||
return name;
|
||||
};
|
||||
|
||||
|
||||
55
test/js/node/test/parallel/test-http-agent-getname.js
Normal file
55
test/js/node/test/parallel/test-http-agent-getname.js
Normal file
@@ -0,0 +1,55 @@
|
||||
'use strict';
|
||||
|
||||
require('../common');
|
||||
const assert = require('assert');
|
||||
const http = require('http');
|
||||
|
||||
const tmpdir = require('../common/tmpdir');
|
||||
|
||||
const agent = new http.Agent();
|
||||
|
||||
// Default to localhost
|
||||
assert.strictEqual(
|
||||
agent.getName({
|
||||
port: 80,
|
||||
localAddress: '192.168.1.1'
|
||||
}),
|
||||
'localhost:80:192.168.1.1'
|
||||
);
|
||||
|
||||
// empty argument
|
||||
assert.strictEqual(
|
||||
agent.getName(),
|
||||
'localhost::'
|
||||
);
|
||||
|
||||
// empty options
|
||||
assert.strictEqual(
|
||||
agent.getName({}),
|
||||
'localhost::'
|
||||
);
|
||||
|
||||
// pass all arguments
|
||||
assert.strictEqual(
|
||||
agent.getName({
|
||||
host: '0.0.0.0',
|
||||
port: 80,
|
||||
localAddress: '192.168.1.1'
|
||||
}),
|
||||
'0.0.0.0:80:192.168.1.1'
|
||||
);
|
||||
|
||||
// unix socket
|
||||
const socketPath = tmpdir.resolve('foo', 'bar');
|
||||
assert.strictEqual(
|
||||
agent.getName({
|
||||
socketPath
|
||||
}),
|
||||
`localhost:::${socketPath}`
|
||||
);
|
||||
|
||||
for (const family of [0, null, undefined, 'bogus'])
|
||||
assert.strictEqual(agent.getName({ family }), 'localhost::');
|
||||
|
||||
for (const family of [4, 6])
|
||||
assert.strictEqual(agent.getName({ family }), `localhost:::${family}`);
|
||||
Reference in New Issue
Block a user