1
0
mirror of https://github.com/redis/node-redis.git synced 2025-08-07 13:22:56 +03:00

fix: client duplicate function now allows db param to be passed

This commit is contained in:
Mark McNelis
2018-02-23 16:59:02 +00:00
committed by Ruben Bridgewater
parent 66d5a50467
commit 19c80c617c
2 changed files with 4 additions and 1 deletions

View File

@@ -95,7 +95,7 @@ RedisClient.prototype.duplicate = function (options, callback) {
existing_options[elem] = options[elem]; existing_options[elem] = options[elem];
} }
var client = new RedisClient(existing_options); var client = new RedisClient(existing_options);
client.selected_db = this.selected_db; client.selected_db = options.db || this.selected_db;
if (typeof callback === 'function') { if (typeof callback === 'function') {
var ready_listener = function () { var ready_listener = function () {
callback(null, client); callback(null, client);

View File

@@ -120,11 +120,14 @@ describe('The node_redis client', function () {
}); });
it('check if all new options replaced the old ones', function (done) { it('check if all new options replaced the old ones', function (done) {
client.selected_db = 1;
var client2 = client.duplicate({ var client2 = client.duplicate({
db: 2,
no_ready_check: true no_ready_check: true
}); });
assert(client.connected); assert(client.connected);
assert(!client2.connected); assert(!client2.connected);
assert.notEqual(client.selected_db, client2.selected_db);
assert.strictEqual(client.options.no_ready_check, undefined); assert.strictEqual(client.options.no_ready_check, undefined);
assert.strictEqual(client2.options.no_ready_check, true); assert.strictEqual(client2.options.no_ready_check, true);
assert.notDeepEqual(client.options, client2.options); assert.notDeepEqual(client.options, client2.options);