|
2 | 2 |
|
3 | 3 | var assert = require('assert');
|
4 | 4 | var fs = require('fs');
|
| 5 | +var util = require('util'); |
5 | 6 | var path = require('path');
|
6 | 7 | var intercept = require('intercept-stdout');
|
7 | 8 | var config = require('./lib/config');
|
@@ -359,7 +360,11 @@ describe('The node_redis client', function () {
|
359 | 360 |
|
360 | 361 | it('send_command with callback as args', function (done) {
|
361 | 362 | client.send_command('abcdef', function (err, res) {
|
362 |
| - assert.strictEqual(err.message, 'ERR unknown command `abcdef`, with args beginning with: '); |
| 363 | + if (process.platform === 'win32') { |
| 364 | + assert.strictEqual(err.message, 'ERR unknown command `abcdef`'); |
| 365 | + } else { |
| 366 | + assert.strictEqual(err.message, 'ERR unknown command `abcdef`, with args beginning with: '); |
| 367 | + } |
363 | 368 | done();
|
364 | 369 | });
|
365 | 370 | });
|
@@ -675,15 +680,21 @@ describe('The node_redis client', function () {
|
675 | 680 | done();
|
676 | 681 | });
|
677 | 682 | });
|
678 |
| - require('domain').create(); |
679 | 683 | });
|
680 | 684 |
|
681 | 685 | it('catches all errors from within the domain', function (done) {
|
682 | 686 | var domain = require('domain').create();
|
683 | 687 |
|
684 | 688 | domain.run(function () {
|
685 |
| - // Trigger an error within the domain |
| 689 | + if (process.versions.node.split('.')[0] >= 13) { |
| 690 | + // Node >= 13 |
| 691 | + // Recreate client in domain so error handlers run this domain |
| 692 | + // Changed in: "error handler runs outside of its domain" |
| 693 | + // https://github.com/nodejs/node/pull/26211 |
| 694 | + client = redis.createClient(); |
| 695 | + } |
686 | 696 | client.end(true);
|
| 697 | + // Trigger an error within the domain |
687 | 698 | client.set('domain', 'value');
|
688 | 699 | });
|
689 | 700 |
|
@@ -986,7 +997,14 @@ describe('The node_redis client', function () {
|
986 | 997 | }
|
987 | 998 | } else {
|
988 | 999 | assert.equal(err.code, 'ECONNREFUSED');
|
989 |
| - assert.equal(err.errno, 'ECONNREFUSED'); |
| 1000 | + |
| 1001 | + if (typeof err.errno === 'number') { |
| 1002 | + // >= Node 13 |
| 1003 | + assert.equal(util.getSystemErrorName(err.errno), 'ECONNREFUSED'); |
| 1004 | + } else { |
| 1005 | + // < Node 13 |
| 1006 | + assert.equal(err.errno, 'ECONNREFUSED'); |
| 1007 | + } |
990 | 1008 | assert.equal(err.syscall, 'connect');
|
991 | 1009 | }
|
992 | 1010 | });
|
@@ -1046,7 +1064,13 @@ describe('The node_redis client', function () {
|
1046 | 1064 | end();
|
1047 | 1065 | } else {
|
1048 | 1066 | assert.equal(err.code, 'ECONNREFUSED');
|
1049 |
| - assert.equal(err.errno, 'ECONNREFUSED'); |
| 1067 | + if (typeof err.errno === 'number') { |
| 1068 | + // >= Node 13 |
| 1069 | + assert.equal(util.getSystemErrorName(err.errno), 'ECONNREFUSED'); |
| 1070 | + } else { |
| 1071 | + // < Node 13 |
| 1072 | + assert.equal(err.errno, 'ECONNREFUSED'); |
| 1073 | + } |
1050 | 1074 | assert.equal(err.syscall, 'connect');
|
1051 | 1075 | end();
|
1052 | 1076 | }
|
@@ -1132,7 +1156,13 @@ describe('The node_redis client', function () {
|
1132 | 1156 | end();
|
1133 | 1157 | } else {
|
1134 | 1158 | assert.equal(err.code, 'ECONNREFUSED');
|
1135 |
| - assert.equal(err.errno, 'ECONNREFUSED'); |
| 1159 | + if (typeof err.errno === 'number') { |
| 1160 | + // >= Node 13 |
| 1161 | + assert.equal(util.getSystemErrorName(err.errno), 'ECONNREFUSED'); |
| 1162 | + } else { |
| 1163 | + // < Node 13 |
| 1164 | + assert.equal(err.errno, 'ECONNREFUSED'); |
| 1165 | + } |
1136 | 1166 | assert.equal(err.syscall, 'connect');
|
1137 | 1167 | redis.debug_mode = false;
|
1138 | 1168 | client.end(true);
|
|
0 commit comments