diff --git a/packages/client/lib/commands/ZREMRANGEBYLEX.spec.ts b/packages/client/lib/commands/ZREMRANGEBYLEX.spec.ts index 5b9f74fbe4..149aca959c 100644 --- a/packages/client/lib/commands/ZREMRANGEBYLEX.spec.ts +++ b/packages/client/lib/commands/ZREMRANGEBYLEX.spec.ts @@ -1,19 +1,22 @@ -// import { strict as assert } from 'assert'; -// import testUtils, { GLOBAL } from '../test-utils'; -// import { transformArguments } from './ZREMRANGEBYLEX'; +import { strict as assert } from 'assert'; +import testUtils, { GLOBAL } from '../test-utils'; +import ZREMRANGEBYLEX from './ZREMRANGEBYLEX'; -// describe('ZREMRANGEBYLEX', () => { -// it('transformArguments', () => { -// assert.deepEqual( -// transformArguments('key', '[a', '[b'), -// ['ZREMRANGEBYLEX', 'key', '[a', '[b'] -// ); -// }); +describe('ZREMRANGEBYLEX', () => { + it('transformArguments', () => { + assert.deepEqual( + ZREMRANGEBYLEX.transformArguments('key', '[a', '[b'), + ['ZREMRANGEBYLEX', 'key', '[a', '[b'] + ); + }); -// testUtils.testWithClient('client.zRemRangeByLex', async client => { -// assert.equal( -// await client.zRemRangeByLex('key', '[a', '[b'), -// 0 -// ); -// }, GLOBAL.SERVERS.OPEN); -// }); + testUtils.testAll('zRemRangeByLex', async client => { + assert.equal( + await client.zRemRangeByLex('key', '[a', '[b'), + 0 + ); + }, { + client: GLOBAL.SERVERS.OPEN, + cluster: GLOBAL.CLUSTERS.OPEN + }); +}); diff --git a/packages/client/lib/commands/ZREMRANGEBYLEX.ts b/packages/client/lib/commands/ZREMRANGEBYLEX.ts index 8c7adf0c91..e3cd7013ac 100644 --- a/packages/client/lib/commands/ZREMRANGEBYLEX.ts +++ b/packages/client/lib/commands/ZREMRANGEBYLEX.ts @@ -1,19 +1,20 @@ -// import { RedisCommandArgument, RedisCommandArguments } from '.'; -// import { transformStringDoubleArgument } from './generic-transformers'; +import { NumberReply, Command, RedisArgument } 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 [ -// 'ZREMRANGEBYLEX', -// 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 [ + 'ZREMRANGEBYLEX', + 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 a680d06748..04743b08b7 100644 --- a/packages/client/lib/commands/index.ts +++ b/packages/client/lib/commands/index.ts @@ -169,6 +169,7 @@ import ZRANGEBYLEX from './ZRANGEBYLEX'; import ZRANGEBYSCORE from './ZRANGEBYSCORE'; import ZRANK from './ZRANK'; import ZREM from './ZREM'; +import ZREMRANGEBYLEX from './ZREMRANGEBYLEX'; import ZREVRANK from './ZREVRANK'; import ZSCAN from './ZSCAN'; import ZSCORE from './ZSCORE'; @@ -516,6 +517,8 @@ export default { zRangeByLex: ZRANGEBYLEX, ZRANGEBYSCORE, zRangeByScore: ZRANGEBYSCORE, + ZREMRANGEBYLEX, + zRemRangeByLex: ZREMRANGEBYLEX, ZRANK, zRank: ZRANK, ZREM, diff --git a/todo.md b/todo.md index 1c1425acd6..95d8c58e7a 100644 --- a/todo.md +++ b/todo.md @@ -13,8 +13,6 @@ # waiting List -- `ZRANGEBYLEX.ts` -- `ZREMRANGEBYLEX.ts` - `ZREMRANGEBYRANK.ts` - `ZREMRANGEBYSCORE.ts`