@@ -28,6 +28,7 @@ const globalAgent = require('../../../globalAgent');
2828// Clustering support was officially introduced in v4
2929// Redis Sentinel support was added in v5.
3030const legacyVersion = 'v3' ;
31+ const versionsSinceV5 = [ 'latest' , 'v583' ] ;
3132
3233/**
3334 * Supported Redis setups for local testing:
@@ -52,7 +53,7 @@ const allSetupTypes = ['default', 'cluster', 'sentinel'];
5253const selectedSetupType = false ;
5354const setupTypesToRun = allSetupTypes . includes ( selectedSetupType ) ? [ selectedSetupType ] : allSetupTypes ;
5455
55- const allVersions = [ 'latest' , 'v4' , 'v3' ] ;
56+ const allVersions = [ 'latest' , 'v583' , ' v4', 'v3' ] ;
5657const selectedVersion = false ;
5758const versionsToRun = allVersions . includes ( selectedVersion ) ? [ selectedVersion ] : allVersions ;
5859
@@ -68,7 +69,7 @@ setupTypesToRun.forEach(setupType => {
6869
6970 const shouldSkipCluster = setupType === 'cluster' && redisVersion === legacyVersion ;
7071 // NOTE: sentinel support added in v5(latest).
71- const shouldSkipSentinel = setupType === 'sentinel' && redisVersion !== 'latest' ;
72+ const shouldSkipSentinel = setupType === 'sentinel' && ! versionsSinceV5 . includes ( redisVersion ) ;
7273
7374 if ( shouldSkipCluster || shouldSkipSentinel ) {
7475 mochaSuiteFn = describe . skip ;
@@ -127,7 +128,7 @@ setupTypesToRun.forEach(setupType => {
127128 // In v5, Redis moved “Isolation Pool” into RedisClientPool.
128129 // see: https://github.com/redis/node-redis/blob/master/docs/pool.md
129130 // Only for this test the connection is established via the pool.
130- if ( redisVersion === 'latest' && setupType === 'default' ) {
131+ if ( versionsSinceV5 . includes ( redisVersion ) && setupType === 'default' ) {
131132 mochaSuiteFn ( 'When connected via clientpool' , function ( ) {
132133 globalAgent . setUpCleanUpHooks ( ) ;
133134 let controls ;
@@ -801,8 +802,8 @@ setupTypesToRun.forEach(setupType => {
801802 ] ) ;
802803 // NOTE: v5 SCAN iterators yield collection of keys, enabling multi-key commands like MGET.
803804 // See: https://github.com/redis/node-redis/blob/master/docs/v4-to-v5.md#scan-iterators
804- const expectedSpanCount = redisVersion === 'latest' ? 1 : 4 ;
805- const expectedRedisCommand = redisVersion === 'latest' ? 'mGet' : 'get' ;
805+ const expectedSpanCount = versionsSinceV5 . includes ( redisVersion ) ? 1 : 4 ;
806+ const expectedRedisCommand = versionsSinceV5 . includes ( redisVersion ) ? 'mGet' : 'get' ;
806807
807808 expectExactlyNMatching ( spans , expectedSpanCount , [
808809 span => expect ( span . t ) . to . equal ( entrySpan . t ) ,
@@ -828,7 +829,7 @@ setupTypesToRun.forEach(setupType => {
828829 // The "Isolation Pool" was introduced via RedisClientPool in v5.
829830 // This new pool type requires a different connection mechanism.
830831 // As a result, this test is being skipped.
831- if ( redisVersion !== 'latest' ) {
832+ if ( ! versionsSinceV5 . includes ( redisVersion ) ) {
832833 it ( 'blocking' , ( ) => testBlockingCommand ( controls , setupType ) ) ;
833834 }
834835 }
0 commit comments