diff --git a/utils/TestUtils.ts b/utils/TestUtils.ts index 2f6280c642..52546dcf19 100644 --- a/utils/TestUtils.ts +++ b/utils/TestUtils.ts @@ -52,34 +52,21 @@ export class RedisCluster { private static async detectVersion(): Promise { return new Promise((resolve, reject) => { - // Helper function to execute a command and parse the version - const getVersion = (command: string): Promise => { - return new Promise((resolve, reject) => { - exec(command, (error, stdout) => { + // First, try with `valkey-server -v` + exec("valkey-server -v", (error, stdout) => { + if (error) { + // If `valkey-server` fails, try `redis-server -v` + exec("redis-server -v", (error, stdout) => { if (error) { reject(error); } else { - const versionMatch = stdout.match(/v=([^\s]+)/); - - if (versionMatch) { - resolve(versionMatch[1]); - } else { - reject( - new Error("Version not found in output") - ); - } + resolve(stdout.split("v=")[1].split(" ")[0]); } }); - }); - }; - - // Attempt to get the version from valkey-server first - getVersion("valkey-server -v") - .then(resolve) - .catch(() => { - // If valkey-server fails, attempt to get the version from redis-server - getVersion("redis-server -v").then(resolve).catch(reject); - }); + } + + resolve(stdout.split("v=")[1].split(" ")[0]); + }); }); }