From 98c1a1d235a2e1b0bc04df5911190e2f540ae048 Mon Sep 17 00:00:00 2001 From: dovi Date: Tue, 2 May 2023 18:35:33 -0400 Subject: [PATCH] fix ZREMRANGEBYSCORE --- .../lib/commands/ZREMRANGEBYSCORE.spec.ts | 37 ++++++++++--------- .../client/lib/commands/ZREMRANGEBYSCORE.ts | 37 ++++++++++--------- packages/client/lib/commands/index.ts | 3 ++ 3 files changed, 42 insertions(+), 35 deletions(-) diff --git a/packages/client/lib/commands/ZREMRANGEBYSCORE.spec.ts b/packages/client/lib/commands/ZREMRANGEBYSCORE.spec.ts index 8d4bbf5286..ff819438d6 100644 --- a/packages/client/lib/commands/ZREMRANGEBYSCORE.spec.ts +++ b/packages/client/lib/commands/ZREMRANGEBYSCORE.spec.ts @@ -1,19 +1,22 @@ -// import { strict as assert } from 'assert'; -// import testUtils, { GLOBAL } from '../test-utils'; -// import { transformArguments } from './ZREMRANGEBYSCORE'; +import { strict as assert } from 'assert'; +import testUtils, { GLOBAL } from '../test-utils'; +import ZREMRANGEBYSCORE from './ZREMRANGEBYSCORE'; -// describe('ZREMRANGEBYSCORE', () => { -// it('transformArguments', () => { -// assert.deepEqual( -// transformArguments('key', 0, 1), -// ['ZREMRANGEBYSCORE', 'key', '0', '1'] -// ); -// }); +describe('ZREMRANGEBYSCORE', () => { + it('transformArguments', () => { + assert.deepEqual( + ZREMRANGEBYSCORE.transformArguments('key', 0, 1), + ['ZREMRANGEBYSCORE', 'key', '0', '1'] + ); + }); -// testUtils.testWithClient('client.zRemRangeByScore', async client => { -// assert.equal( -// await client.zRemRangeByScore('key', 0, 1), -// 0 -// ); -// }, GLOBAL.SERVERS.OPEN); -// }); + testUtils.testAll('zRemRangeByScore', async client => { + assert.equal( + await client.zRemRangeByScore('key', 0, 1), + 0 + ); + }, { + client: GLOBAL.SERVERS.OPEN, + cluster: GLOBAL.CLUSTERS.OPEN + }); +}); diff --git a/packages/client/lib/commands/ZREMRANGEBYSCORE.ts b/packages/client/lib/commands/ZREMRANGEBYSCORE.ts index 802e42db8d..7050f2627a 100644 --- a/packages/client/lib/commands/ZREMRANGEBYSCORE.ts +++ b/packages/client/lib/commands/ZREMRANGEBYSCORE.ts @@ -1,19 +1,20 @@ -// import { RedisCommandArgument, RedisCommandArguments } from '.'; -// import { transformStringDoubleArgument } from './generic-transformers'; +import { RedisArgument, NumberReply, Command } from '../RESP/types'; +import { transformStringDoubleArgument } from './generic-transformers'; -// export const FIRST_KEY_INDEX = 1; - -// export function transformArguments( -// key: RedisCommandArgument, -// min: RedisCommandArgument | number, -// max: RedisCommandArgument | number, -// ): RedisCommandArguments { -// return [ -// 'ZREMRANGEBYSCORE', -// key, -// transformStringDoubleArgument(min), -// transformStringDoubleArgument(max) -// ]; -// } - -// export declare function transformReply(): number; +export default { + FIRST_KEY_INDEX: 1, + IS_READ_ONLY: false, + transformArguments( + key: RedisArgument, + min: RedisArgument | number, + max: RedisArgument | number, + ) { + return [ + 'ZREMRANGEBYSCORE', + key, + transformStringDoubleArgument(min), + transformStringDoubleArgument(max) + ]; + }, + transformReply: undefined as unknown as () => NumberReply +} as const satisfies Command; diff --git a/packages/client/lib/commands/index.ts b/packages/client/lib/commands/index.ts index eb8d227d41..2613cc05d6 100644 --- a/packages/client/lib/commands/index.ts +++ b/packages/client/lib/commands/index.ts @@ -167,6 +167,7 @@ import ZRANDMEMBER from './ZRANDMEMBER'; import ZRANGE from './ZRANGE'; import ZRANGEBYLEX from './ZRANGEBYLEX'; import ZRANGEBYSCORE from './ZRANGEBYSCORE'; +import ZREMRANGEBYSCORE from './ZREMRANGEBYSCORE'; import ZRANK from './ZRANK'; import ZREM from './ZREM'; import ZREMRANGEBYLEX from './ZREMRANGEBYLEX'; @@ -526,6 +527,8 @@ export default { zRemRangeByLex: ZREMRANGEBYLEX, ZREMRANGEBYRANK, zRemRangeByRank: ZREMRANGEBYRANK, + ZREMRANGEBYSCORE, + zRemRangeByScore: ZREMRANGEBYSCORE, ZREVRANK, zRevRank: ZREVRANK, ZSCAN,