You've already forked node-redis
mirror of
https://github.com/redis/node-redis.git
synced 2025-08-03 04:01:40 +03:00
138 lines
4.8 KiB
TypeScript
138 lines
4.8 KiB
TypeScript
import { strict as assert } from 'node:assert';
|
|
import CLIENT_INFO from './CLIENT_INFO';
|
|
import testUtils, { GLOBAL } from '../test-utils';
|
|
import { parseArgs } from './generic-transformers';
|
|
import { version } from '../../package.json';
|
|
|
|
describe('CLIENT INFO', () => {
|
|
testUtils.isVersionGreaterThanHook([6, 2]);
|
|
|
|
it('transformArguments', () => {
|
|
assert.deepEqual(
|
|
parseArgs(CLIENT_INFO),
|
|
['CLIENT', 'INFO']
|
|
);
|
|
});
|
|
|
|
testUtils.testWithClient('client.clientInfo', async client => {
|
|
const reply = await client.clientInfo();
|
|
assert.equal(typeof reply.id, 'number');
|
|
assert.equal(typeof reply.addr, 'string');
|
|
assert.equal(typeof reply.laddr, 'string');
|
|
assert.equal(typeof reply.fd, 'number');
|
|
assert.equal(typeof reply.name, 'string');
|
|
assert.equal(typeof reply.age, 'number');
|
|
assert.equal(typeof reply.idle, 'number');
|
|
assert.equal(typeof reply.flags, 'string');
|
|
assert.equal(typeof reply.db, 'number');
|
|
assert.equal(typeof reply.sub, 'number');
|
|
assert.equal(typeof reply.psub, 'number');
|
|
assert.equal(typeof reply.multi, 'number');
|
|
assert.equal(typeof reply.qbuf, 'number');
|
|
assert.equal(typeof reply.qbufFree, 'number');
|
|
assert.equal(typeof reply.argvMem, 'number');
|
|
assert.equal(typeof reply.obl, 'number');
|
|
assert.equal(typeof reply.oll, 'number');
|
|
assert.equal(typeof reply.omem, 'number');
|
|
assert.equal(typeof reply.totMem, 'number');
|
|
assert.equal(typeof reply.events, 'string');
|
|
assert.equal(typeof reply.cmd, 'string');
|
|
assert.equal(typeof reply.user, 'string');
|
|
assert.equal(typeof reply.redir, 'number');
|
|
|
|
if (testUtils.isVersionGreaterThan([7, 0])) {
|
|
assert.equal(typeof reply.multiMem, 'number');
|
|
assert.equal(typeof reply.resp, 'number');
|
|
|
|
if (testUtils.isVersionGreaterThan([7, 0, 3])) {
|
|
assert.equal(typeof reply.ssub, 'number');
|
|
}
|
|
}
|
|
}, GLOBAL.SERVERS.OPEN);
|
|
|
|
testUtils.testWithClient('client.clientInfo Redis < 7', async client => {
|
|
const reply = await client.clientInfo();
|
|
if (!testUtils.isVersionGreaterThan([7])) {
|
|
assert.strictEqual(reply.libName, undefined, 'LibName should be undefined for Redis < 7');
|
|
assert.strictEqual(reply.libVer, undefined, 'LibVer should be undefined for Redis < 7');
|
|
}
|
|
}, GLOBAL.SERVERS.OPEN);
|
|
|
|
testUtils.testWithClientIfVersionWithinRange([[7], 'LATEST'], 'client.clientInfo Redis>=7 info disabled', async client => {
|
|
const reply = await client.clientInfo();
|
|
assert.equal(reply.libName, '');
|
|
assert.equal(reply.libVer, '');
|
|
}, {
|
|
...GLOBAL.SERVERS.OPEN,
|
|
clientOptions: {
|
|
disableClientInfo: true
|
|
}
|
|
});
|
|
|
|
testUtils.testWithClientIfVersionWithinRange([[7], 'LATEST'], 'client.clientInfo Redis>=7 resp unset, info enabled, tag set', async client => {
|
|
const reply = await client.clientInfo();
|
|
assert.equal(reply.libName, 'node-redis(client1)');
|
|
assert.equal(reply.libVer, version);
|
|
}, {
|
|
...GLOBAL.SERVERS.OPEN,
|
|
clientOptions: {
|
|
clientInfoTag: 'client1'
|
|
}
|
|
});
|
|
|
|
testUtils.testWithClientIfVersionWithinRange([[7], 'LATEST'], 'client.clientInfo Redis>=7 resp unset, info enabled, tag unset', async client => {
|
|
const reply = await client.clientInfo();
|
|
assert.equal(reply.libName, 'node-redis');
|
|
assert.equal(reply.libVer, version);
|
|
}, GLOBAL.SERVERS.OPEN);
|
|
|
|
testUtils.testWithClientIfVersionWithinRange([[7], 'LATEST'], 'client.clientInfo Redis>=7 resp2 info enabled', async client => {
|
|
const reply = await client.clientInfo();
|
|
assert.equal(reply.libName, 'node-redis(client1)');
|
|
assert.equal(reply.libVer, version);
|
|
}, {
|
|
...GLOBAL.SERVERS.OPEN,
|
|
clientOptions: {
|
|
RESP: 2,
|
|
clientInfoTag: 'client1'
|
|
}
|
|
});
|
|
|
|
testUtils.testWithClientIfVersionWithinRange([[7], 'LATEST'], 'client.clientInfo Redis>=7 resp2 info disabled', async client => {
|
|
const reply = await client.clientInfo();
|
|
assert.equal(reply.libName, '');
|
|
assert.equal(reply.libVer, '');
|
|
}, {
|
|
...GLOBAL.SERVERS.OPEN,
|
|
clientOptions: {
|
|
disableClientInfo: true,
|
|
RESP: 2
|
|
}
|
|
});
|
|
|
|
testUtils.testWithClientIfVersionWithinRange([[7], 'LATEST'], 'client.clientInfo Redis>=7 resp3 info enabled', async client => {
|
|
const reply = await client.clientInfo();
|
|
assert.equal(reply.libName, 'node-redis(client1)');
|
|
assert.equal(reply.libVer, version);
|
|
}, {
|
|
...GLOBAL.SERVERS.OPEN,
|
|
clientOptions: {
|
|
RESP: 3,
|
|
clientInfoTag: 'client1'
|
|
}
|
|
});
|
|
|
|
testUtils.testWithClientIfVersionWithinRange([[7], 'LATEST'], 'client.clientInfo Redis>=7 resp3 info disabled', async client => {
|
|
const reply = await client.clientInfo();
|
|
assert.equal(reply.libName, '');
|
|
assert.equal(reply.libVer, '');
|
|
}, {
|
|
...GLOBAL.SERVERS.OPEN,
|
|
clientOptions: {
|
|
disableClientInfo: true,
|
|
RESP: 3
|
|
}
|
|
});
|
|
|
|
});
|