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

tests: fix Error & Domain tests on Node >= 13

This commit is contained in:
Salakar
2020-02-06 23:59:31 +00:00
parent 36b62fe579
commit 13ec6afe58

View File

@@ -675,15 +675,21 @@ describe('The node_redis client', function () {
done(); done();
}); });
}); });
require('domain').create();
}); });
it('catches all errors from within the domain', function (done) { it('catches all errors from within the domain', function (done) {
var domain = require('domain').create(); var domain = require('domain').create();
domain.run(function () { domain.run(function () {
// Trigger an error within the domain if (process.versions.node.split('.')[0] >= 13) {
// Node >= 13
// Recreate client in domain so error handlers run this domain
// Changed in: "error handler runs outside of its domain"
// https://github.com/nodejs/node/pull/26211
client = redis.createClient();
}
client.end(true); client.end(true);
// Trigger an error within the domain
client.set('domain', 'value'); client.set('domain', 'value');
}); });
@@ -1053,7 +1059,13 @@ describe('The node_redis client', function () {
end(); end();
} else { } else {
assert.equal(err.code, 'ECONNREFUSED'); assert.equal(err.code, 'ECONNREFUSED');
assert.equal(err.errno, 'ECONNREFUSED'); if (typeof err.errno === 'number') {
// >= Node 13
assert.equal(err.errno, -61);
} else {
// < Node 13
assert.equal(err.errno, 'ECONNREFUSED');
}
assert.equal(err.syscall, 'connect'); assert.equal(err.syscall, 'connect');
end(); end();
} }
@@ -1139,7 +1151,13 @@ describe('The node_redis client', function () {
end(); end();
} else { } else {
assert.equal(err.code, 'ECONNREFUSED'); assert.equal(err.code, 'ECONNREFUSED');
assert.equal(err.errno, 'ECONNREFUSED'); if (typeof err.errno === 'number') {
// >= Node 13
assert.equal(err.errno, -61);
} else {
// < Node 13
assert.equal(err.errno, 'ECONNREFUSED');
}
assert.equal(err.syscall, 'connect'); assert.equal(err.syscall, 'connect');
redis.debug_mode = false; redis.debug_mode = false;
client.end(true); client.end(true);