1
0
mirror of https://github.com/redis/node-redis.git synced 2025-08-07 13:22:56 +03:00

fix SUNIONSTORE

This commit is contained in:
dovi
2023-05-03 18:51:12 -04:00
parent 627c9122ef
commit 4de409e0ad
3 changed files with 44 additions and 37 deletions

View File

@@ -1,28 +1,31 @@
// import { strict as assert } from 'assert';
// import testUtils, { GLOBAL } from '../test-utils';
// import { transformArguments } from './SUNIONSTORE';
import { strict as assert } from 'assert';
import testUtils, { GLOBAL } from '../test-utils';
import SUNIONSTORE from './SUNIONSTORE';
// describe('SUNIONSTORE', () => {
// describe('transformArguments', () => {
// it('string', () => {
// assert.deepEqual(
// transformArguments('destination', 'key'),
// ['SUNIONSTORE', 'destination', 'key']
// );
// });
describe('SUNIONSTORE', () => {
describe('transformArguments', () => {
it('string', () => {
assert.deepEqual(
SUNIONSTORE.transformArguments('destination', 'key'),
['SUNIONSTORE', 'destination', 'key']
);
});
// it('array', () => {
// assert.deepEqual(
// transformArguments('destination', ['1', '2']),
// ['SUNIONSTORE', 'destination', '1', '2']
// );
// });
// });
it('array', () => {
assert.deepEqual(
SUNIONSTORE.transformArguments('destination', ['1', '2']),
['SUNIONSTORE', 'destination', '1', '2']
);
});
});
// testUtils.testWithClient('client.sUnionStore', async client => {
// assert.equal(
// await client.sUnionStore('destination', 'key'),
// 0
// );
// }, GLOBAL.SERVERS.OPEN);
// });
testUtils.testAll('sUnionStore', async client => {
assert.equal(
await client.sUnionStore('{tag}destination', '{tag}key'),
0
);
}, {
client: GLOBAL.SERVERS.OPEN,
cluster: GLOBAL.CLUSTERS.OPEN
});
});

View File

@@ -1,13 +1,14 @@
// import { RedisCommandArgument, RedisCommandArguments } from '.';
// import { pushVariadicArguments } from './generic-transformers';
import { RedisArgument, NumberReply, Command } from '../RESP/types';
import { RedisVariadicArgument, pushVariadicArguments } from './generic-transformers';
// export const FIRST_KEY_INDEX = 1;
// export function transformArguments(
// destination: RedisCommandArgument,
// keys: RedisCommandArgument | Array<RedisCommandArgument>
// ): RedisCommandArguments {
// return pushVariadicArguments(['SUNIONSTORE', destination], keys);
// }
// export declare function transformReply(): number;
export default {
FIRST_KEY_INDEX: 1,
IS_READ_ONLY: false,
transformArguments(
destination: RedisArgument,
keys: RedisVariadicArgument
) {
return pushVariadicArguments(['SUNIONSTORE', destination], keys);
},
transformReply: undefined as unknown as () => NumberReply
} as const satisfies Command;

View File

@@ -152,6 +152,7 @@ import SREM from './SREM';
import SSCAN from './SSCAN';
import STRLEN from './STRLEN';
import SUNION from './SUNION';
import SUNIONSTORE from './SUNIONSTORE';
import TOUCH from './TOUCH';
import TTL from './TTL';
import TYPE from './TYPE';
@@ -507,6 +508,8 @@ export default {
strLen: STRLEN,
SUNION,
sUnion: SUNION,
SUNIONSTORE,
sUnionStore: SUNIONSTORE,
TOUCH,
touch: TOUCH,
TTL,