mirror of
https://github.com/brianc/node-postgres.git
synced 2025-12-08 20:16:25 +00:00
Clients are not reusable. This changes the client to raise errors whenever you try to reconnect a client that's already been used. They're cheap to create: just instantiate a new one (or use the pool) 😉. Closes #1352
35 lines
1.0 KiB
JavaScript
35 lines
1.0 KiB
JavaScript
"use strict";
|
|
var domain = require('domain');
|
|
var helper = require("./../test-helper");
|
|
var Client = require("./../../lib/native");
|
|
const suite = new helper.Suite()
|
|
|
|
suite.test('fires callback with results', function(done) {
|
|
var client = new Client(helper.config);
|
|
client.connect();
|
|
client.query('SELECT 1 as num', assert.calls(function(err, result) {
|
|
assert(!err);
|
|
assert.equal(result.rows[0].num, 1);
|
|
assert.strictEqual(result.rowCount, 1);
|
|
client.query('SELECT * FROM person WHERE name = $1', ['Brian'], assert.calls(function(err, result) {
|
|
assert(!err);
|
|
assert.equal(result.rows[0].name, 'Brian');
|
|
client.end(done);
|
|
}))
|
|
}));
|
|
})
|
|
|
|
suite.test('preserves domain', function(done) {
|
|
var dom = domain.create();
|
|
|
|
dom.run(function() {
|
|
var client = new Client(helper.config);
|
|
assert.ok(dom === require('domain').active, 'domain is active');
|
|
client.connect()
|
|
client.query('select 1', function() {
|
|
assert.ok(dom === require('domain').active, 'domain is still active');
|
|
client.end(done);
|
|
});
|
|
});
|
|
})
|