node-postgres/test/unit/client/configuration-tests.js

76 lines
2.3 KiB
JavaScript

require(__dirname+'/test-helper');
test('client settings', function() {
test('defaults', function() {
var client = new Client();
assert.equal(client.user, process.env['PGUSER'] || process.env.USER);
assert.equal(client.database, process.env['PGDATABASE'] || process.env.USER);
assert.equal(client.port, 5432);
});
test('custom', function() {
var user = 'brian';
var database = 'pgjstest';
var password = 'boom';
var client = new Client({
user: user,
database: database,
port: 321,
password: password
});
assert.equal(client.user, user);
assert.equal(client.database, database);
assert.equal(client.port, 321);
assert.equal(client.password, password);
});
});
test('initializing from a config string', function() {
test('uses the correct values from the config string', function() {
var client = new Client("pg://brian:pass@host1:333/databasename")
assert.equal(client.user, 'brian')
assert.equal(client.password, "pass")
assert.equal(client.host, "host1")
assert.equal(client.port, 333)
assert.equal(client.database, "databasename")
})
test('uses the correct values from the config string with space in password', function() {
var client = new Client("pg://brian:pass word@host1:333/databasename")
assert.equal(client.user, 'brian')
assert.equal(client.password, "pass word")
assert.equal(client.host, "host1")
assert.equal(client.port, 333)
assert.equal(client.database, "databasename")
})
test('when not including all values the defaults are used', function() {
var client = new Client("pg://host1")
assert.equal(client.user, process.env['PGUSER'] || process.env.USER)
assert.equal(client.password, process.env['PGPASSWORD'] || null)
assert.equal(client.host, "host1")
assert.equal(client.port, process.env['PGPORT'] || 5432)
assert.equal(client.database, process.env['PGDATABASE'] || process.env.USER)
})
})
test('calls connect correctly on connection', function() {
var client = new Client("/tmp");
var usedPort = "";
var usedHost = "";
client.connection.connect = function(port, host) {
usedPort = port;
usedHost = host;
};
client.connect();
assert.equal(usedPort, "/tmp/.s.PGSQL.5432");
assert.strictEqual(usedHost, undefined)
})