You've already forked node-redis
mirror of
https://github.com/redis/node-redis.git
synced 2025-08-04 15:02:09 +03:00
Add support for T-Digest (#2214)
* wip * close #2216 - add support for TDIGEST.MERGESTORE and make compression optional on TDIGEST.CREATE * fix some tdigest commands, use bloom edge docker * fix index.ts * 2.4-RC2 (v2.4.1) * fix some commands and tests * clean code
This commit is contained in:
@ -42,24 +42,32 @@ interface Version {
|
||||
}
|
||||
|
||||
export default class TestUtils {
|
||||
static #parseVersionNumber(version: string): Array<number> {
|
||||
if (version === 'edge') return [Infinity];
|
||||
|
||||
const dashIndex = version.indexOf('-');
|
||||
return (dashIndex === -1 ? version : version.substring(0, dashIndex))
|
||||
.split('.')
|
||||
.map(x => {
|
||||
const value = Number(x);
|
||||
if (Number.isNaN(value)) {
|
||||
throw new TypeError(`${version} is not a valid redis version`);
|
||||
}
|
||||
|
||||
return value;
|
||||
});
|
||||
}
|
||||
|
||||
static #getVersion(argumentName: string, defaultVersion: string): Version {
|
||||
return yargs(hideBin(process.argv))
|
||||
.option(argumentName, {
|
||||
type: 'string',
|
||||
default: defaultVersion
|
||||
})
|
||||
.coerce(argumentName, (arg: string) => {
|
||||
const indexOfDash = arg.indexOf('-');
|
||||
.coerce(argumentName, (version: string) => {
|
||||
return {
|
||||
string: arg,
|
||||
numbers: (indexOfDash === -1 ? arg : arg.substring(0, indexOfDash)).split('.').map(x => {
|
||||
const value = Number(x);
|
||||
if (Number.isNaN(value)) {
|
||||
throw new TypeError(`${arg} is not a valid redis version`);
|
||||
}
|
||||
|
||||
return value;
|
||||
})
|
||||
string: version,
|
||||
numbers: TestUtils.#parseVersionNumber(version)
|
||||
};
|
||||
})
|
||||
.demandOption(argumentName)
|
||||
|
Reference in New Issue
Block a user