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

JSON.MERGE

This commit is contained in:
Leibale
2023-09-05 14:48:14 -04:00
parent 228b1d97c6
commit 823aba2c3c
3 changed files with 38 additions and 0 deletions

View File

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

View File

@@ -0,0 +1,16 @@
import { SimpleStringReply, Command, RedisArgument } from '@redis/client/dist/lib/RESP/types';
import { RedisJSON, transformRedisJsonArgument } from '.';
export default {
FIRST_KEY_INDEX: 1,
IS_READ_ONLY: false,
transformArguments(key: RedisArgument, path: RedisArgument, value: RedisJSON) {
return [
'JSON.MERGE',
key,
path,
transformRedisJsonArgument(value)
];
},
transformReply: undefined as unknown as () => SimpleStringReply<'OK'>
} as const satisfies Command;

View File

@@ -9,6 +9,7 @@ import DEBUG_MEMORY from './DEBUG_MEMORY';
import DEL from './DEL';
import FORGET from './FORGET';
// import GET from './GET';
import MERGE from './MERGE';
// import MGET from './MGET';
import MSET from './MSET';
import NUMINCRBY from './NUMINCRBY';
@@ -45,6 +46,8 @@ export default {
forget: FORGET,
// GET,
// get: GET,
MERGE,
merge: MERGE,
// MGET,
// mGet: MGET,
MSET,