diff --git a/packages/client/lib/cluster/commands.ts b/packages/client/lib/cluster/commands.ts index a43a6a38dc..dd82e6f314 100644 --- a/packages/client/lib/cluster/commands.ts +++ b/packages/client/lib/cluster/commands.ts @@ -73,6 +73,10 @@ import * as MGET from '../commands/MGET'; import * as MIGRATE from '../commands/MIGRATE'; import * as MSET from '../commands/MSET'; import * as MSETNX from '../commands/MSETNX'; +import * as OBJECT_ENCODING from '../commands/OBJECT_ENCODING'; +import * as OBJECT_FREQ from '../commands/OBJECT_FREQ'; +import * as OBJECT_IDLETIME from '../commands/OBJECT_IDLETIME'; +import * as OBJECT_REFCOUNT from '../commands/OBJECT_REFCOUNT'; import * as PERSIST from '../commands/PERSIST'; import * as PEXPIRE from '../commands/PEXPIRE'; import * as PEXPIREAT from '../commands/PEXPIREAT'; @@ -330,6 +334,14 @@ export default { mSet: MSET, MSETNX, mSetNX: MSETNX, + OBJECT_ENCODING, + objectEncoding: OBJECT_ENCODING, + OBJECT_FREQ, + objectFreq: OBJECT_FREQ, + OBJECT_IDLETIME, + objectIdleTime: OBJECT_IDLETIME, + OBJECT_REFCOUNT, + objectRefCount: OBJECT_REFCOUNT, PERSIST, persist: PERSIST, PEXPIRE, diff --git a/packages/client/lib/commands/OBJECT_ENCODING.spec.ts b/packages/client/lib/commands/OBJECT_ENCODING.spec.ts new file mode 100644 index 0000000000..6f42969d54 --- /dev/null +++ b/packages/client/lib/commands/OBJECT_ENCODING.spec.ts @@ -0,0 +1,19 @@ +import { strict as assert } from 'assert'; +import testUtils, { GLOBAL } from '../test-utils'; +import { transformArguments } from './OBJECT_ENCODING'; + +describe('OBJECT ENCODING', () => { + it('transformArguments', () => { + assert.deepEqual( + transformArguments('key'), + ['OBJECT', 'ENCODING', 'key'] + ); + }); + + testUtils.testWithClient('client.objectEncoding', async client => { + assert.equal( + await client.objectEncoding('key'), + null + ); + }, GLOBAL.SERVERS.OPEN); +}); diff --git a/packages/client/lib/commands/OBJECT_ENCODING.ts b/packages/client/lib/commands/OBJECT_ENCODING.ts new file mode 100644 index 0000000000..ac219ae89e --- /dev/null +++ b/packages/client/lib/commands/OBJECT_ENCODING.ts @@ -0,0 +1,11 @@ +import { RedisCommandArgument, RedisCommandArguments } from '.'; + +export const FIRST_KEY_INDEX = 2; + +export const IS_READ_ONLY = true; + +export function transformArguments(key: RedisCommandArgument): RedisCommandArguments { + return ['OBJECT', 'ENCODING', key]; +} + +export declare function transformReply(): string | null; diff --git a/packages/client/lib/commands/OBJECT_FREQ.spec.ts b/packages/client/lib/commands/OBJECT_FREQ.spec.ts new file mode 100644 index 0000000000..6d2513cf18 --- /dev/null +++ b/packages/client/lib/commands/OBJECT_FREQ.spec.ts @@ -0,0 +1,19 @@ +import { strict as assert } from 'assert'; +import testUtils, { GLOBAL } from '../test-utils'; +import { transformArguments } from './OBJECT_FREQ'; + +describe('OBJECT FREQ', () => { + it('transformArguments', () => { + assert.deepEqual( + transformArguments('key'), + ['OBJECT', 'FREQ', 'key'] + ); + }); + + testUtils.testWithClient('client.objectFreq', async client => { + assert.equal( + await client.objectFreq('key'), + null + ); + }, GLOBAL.SERVERS.OPEN); +}); diff --git a/packages/client/lib/commands/OBJECT_FREQ.ts b/packages/client/lib/commands/OBJECT_FREQ.ts new file mode 100644 index 0000000000..071d16f274 --- /dev/null +++ b/packages/client/lib/commands/OBJECT_FREQ.ts @@ -0,0 +1,11 @@ +import { RedisCommandArgument, RedisCommandArguments } from '.'; + +export const FIRST_KEY_INDEX = 2; + +export const IS_READ_ONLY = true; + +export function transformArguments(key: RedisCommandArgument): RedisCommandArguments { + return ['OBJECT', 'FREQ', key]; +} + +export declare function transformReply(): number | null; diff --git a/packages/client/lib/commands/OBJECT_IDLETIME.spec.ts b/packages/client/lib/commands/OBJECT_IDLETIME.spec.ts new file mode 100644 index 0000000000..61529e1366 --- /dev/null +++ b/packages/client/lib/commands/OBJECT_IDLETIME.spec.ts @@ -0,0 +1,19 @@ +import { strict as assert } from 'assert'; +import testUtils, { GLOBAL } from '../test-utils'; +import { transformArguments } from './OBJECT_IDLETIME'; + +describe('OBJECT IDLETIME', () => { + it('transformArguments', () => { + assert.deepEqual( + transformArguments('key'), + ['OBJECT', 'IDLETIME', 'key'] + ); + }); + + testUtils.testWithClient('client.objectIdleTime', async client => { + assert.equal( + await client.objectIdleTime('key'), + null + ); + }, GLOBAL.SERVERS.OPEN); +}); diff --git a/packages/client/lib/commands/OBJECT_IDLETIME.ts b/packages/client/lib/commands/OBJECT_IDLETIME.ts new file mode 100644 index 0000000000..38847d6f4c --- /dev/null +++ b/packages/client/lib/commands/OBJECT_IDLETIME.ts @@ -0,0 +1,11 @@ +import { RedisCommandArgument, RedisCommandArguments } from '.'; + +export const FIRST_KEY_INDEX = 2; + +export const IS_READ_ONLY = true; + +export function transformArguments(key: RedisCommandArgument): RedisCommandArguments { + return ['OBJECT', 'IDLETIME', key]; +} + +export declare function transformReply(): number | null; diff --git a/packages/client/lib/commands/OBJECT_REFCOUNT.spec.ts b/packages/client/lib/commands/OBJECT_REFCOUNT.spec.ts new file mode 100644 index 0000000000..199dca3fe8 --- /dev/null +++ b/packages/client/lib/commands/OBJECT_REFCOUNT.spec.ts @@ -0,0 +1,19 @@ +import { strict as assert } from 'assert'; +import testUtils, { GLOBAL } from '../test-utils'; +import { transformArguments } from './OBJECT_REFCOUNT'; + +describe('OBJECT REFCOUNT', () => { + it('transformArguments', () => { + assert.deepEqual( + transformArguments('key'), + ['OBJECT', 'REFCOUNT', 'key'] + ); + }); + + testUtils.testWithClient('client.objectRefCount', async client => { + assert.equal( + await client.objectRefCount('key'), + null + ); + }, GLOBAL.SERVERS.OPEN); +}); diff --git a/packages/client/lib/commands/OBJECT_REFCOUNT.ts b/packages/client/lib/commands/OBJECT_REFCOUNT.ts new file mode 100644 index 0000000000..9fd259b5b9 --- /dev/null +++ b/packages/client/lib/commands/OBJECT_REFCOUNT.ts @@ -0,0 +1,11 @@ +import { RedisCommandArgument, RedisCommandArguments } from '.'; + +export const FIRST_KEY_INDEX = 2; + +export const IS_READ_ONLY = true; + +export function transformArguments(key: RedisCommandArgument): RedisCommandArguments { + return ['OBJECT', 'REFCOUNT', key]; +} + +export declare function transformReply(): number | null;