1
0
mirror of https://github.com/redis/node-redis.git synced 2025-08-06 02:15:48 +03:00

create JSON.CLEAR

This commit is contained in:
dovi
2023-07-05 17:42:39 -04:00
parent ddc44d3c49
commit 0ed4ee41f4
3 changed files with 45 additions and 0 deletions

View File

@@ -0,0 +1,28 @@
import { strict as assert } from 'assert';
import testUtils, { GLOBAL } from '../test-utils';
import CLEAR from './CLEAR';
describe('CLEAR', () => {
describe('transformArguments', () => {
it('key', () => {
assert.deepEqual(
CLEAR.transformArguments('key'),
['JSON.CLEAR', 'key']
);
});
it('key, path', () => {
assert.deepEqual(
CLEAR.transformArguments('key', '$.path'),
['JSON.CLEAR', 'key', '$.path']
);
});
});
testUtils.testWithClient('client.json.clear', async client => {
assert.deepEqual(
await client.json.clear('key'),
0
);
}, GLOBAL.SERVERS.OPEN);
});

View File

@@ -0,0 +1,14 @@
import { RedisArgument, NumberReply, Command } from '@redis/client/dist/lib/RESP/types';
export default {
FIRST_KEY_INDEX: 1,
IS_READ_ONLY: false,
transformArguments(key: RedisArgument, path?: RedisArgument) {
const args = ['JSON.CLEAR', key];
if (path) args.push(path);
return args;
},
transformReply: undefined as unknown as () => NumberReply
} as const satisfies Command;

View File

@@ -1,6 +1,7 @@
import * as ARRAPPEND from './ARRAPPEND'; import * as ARRAPPEND from './ARRAPPEND';
import * as ARRINDEX from './ARRINDEX'; import * as ARRINDEX from './ARRINDEX';
import * as ARRINSERT from './ARRINSERT'; import * as ARRINSERT from './ARRINSERT';
import CLEAR from './CLEAR';
import * as ARRLEN from './ARRLEN'; import * as ARRLEN from './ARRLEN';
import * as ARRPOP from './ARRPOP'; import * as ARRPOP from './ARRPOP';
import * as ARRTRIM from './ARRTRIM'; import * as ARRTRIM from './ARRTRIM';
@@ -26,6 +27,8 @@ export default {
arrIndex: ARRINDEX, arrIndex: ARRINDEX,
ARRINSERT, ARRINSERT,
arrInsert: ARRINSERT, arrInsert: ARRINSERT,
CLEAR,
clear: CLEAR,
ARRLEN, ARRLEN,
arrLen: ARRLEN, arrLen: ARRLEN,
ARRPOP, ARRPOP,