diff --git a/src/test/java/redis/clients/jedis/mcf/DefaultValuesTest.java b/src/test/java/redis/clients/jedis/mcf/DefaultValuesTest.java
new file mode 100644
index 0000000000..6939ef7069
--- /dev/null
+++ b/src/test/java/redis/clients/jedis/mcf/DefaultValuesTest.java
@@ -0,0 +1,77 @@
+package redis.clients.jedis.mcf;
+
+import static org.junit.jupiter.api.Assertions.assertEquals;
+import static org.junit.jupiter.api.Assertions.assertNotNull;
+
+import java.time.Duration;
+
+import org.junit.jupiter.api.Test;
+import redis.clients.jedis.DefaultJedisClientConfig;
+import redis.clients.jedis.HostAndPort;
+import redis.clients.jedis.JedisClientConfig;
+import redis.clients.jedis.MultiClusterClientConfig;
+
+public class DefaultValuesTest {
+
+ HostAndPort fakeEndpoint = new HostAndPort("fake", 6379);
+ JedisClientConfig config = DefaultJedisClientConfig.builder().build();
+
+ @Test
+ void testDefaultValuesInConfig() {
+
+ MultiClusterClientConfig.ClusterConfig clusterConfig = MultiClusterClientConfig.ClusterConfig
+ .builder(fakeEndpoint, config).build();
+ MultiClusterClientConfig multiConfig = new MultiClusterClientConfig.Builder(
+ new MultiClusterClientConfig.ClusterConfig[] { clusterConfig }).build();
+
+ // check for grace period
+ assertEquals(60000, multiConfig.getGracePeriod());
+
+ // check for cluster config
+ assertEquals(clusterConfig, multiConfig.getClusterConfigs()[0]);
+
+ // check healthchecks enabled
+ assertNotNull(clusterConfig.getHealthCheckStrategySupplier());
+
+ // check default healthcheck strategy is echo
+ assertEquals(EchoStrategy.DEFAULT, clusterConfig.getHealthCheckStrategySupplier());
+
+ // check number of probes
+ assertEquals(3,
+ clusterConfig.getHealthCheckStrategySupplier().get(fakeEndpoint, config).getNumProbes());
+
+ assertEquals(500, clusterConfig.getHealthCheckStrategySupplier().get(fakeEndpoint, config)
+ .getDelayInBetweenProbes());
+
+ assertEquals(ProbingPolicy.BuiltIn.ALL_SUCCESS,
+ clusterConfig.getHealthCheckStrategySupplier().get(fakeEndpoint, config).getPolicy());
+
+ // check health check interval
+ assertEquals(5000,
+ clusterConfig.getHealthCheckStrategySupplier().get(fakeEndpoint, config).getInterval());
+
+ // check lag aware tolerance
+ LagAwareStrategy.Config lagAwareConfig = LagAwareStrategy.Config
+ .builder(fakeEndpoint, config.getCredentialsProvider()).build();
+ assertEquals(Duration.ofMillis(5000), lagAwareConfig.getAvailabilityLagTolerance());
+
+ // TODO: check CB number of failures threshold -- 1000
+ // assertEquals(1000, multiConfig.circuitBreakerMinNumOfFailures());
+
+ // check CB failure rate threshold
+ assertEquals(10, multiConfig.getCircuitBreakerFailureRateThreshold());
+
+ // check CB sliding window size
+ assertEquals(2, multiConfig.getCircuitBreakerSlidingWindowSize());
+
+ // check failback check interval
+ assertEquals(120000, multiConfig.getFailbackCheckInterval());
+
+ // check failover max attempts before give up
+ assertEquals(10, multiConfig.getMaxNumFailoverAttempts());
+
+ // check delay between failover attempts
+ assertEquals(12000, multiConfig.getDelayInBetweenFailoverAttempts());
+
+ }
+}
diff --git a/src/test/java/redis/clients/jedis/mcf/FailbackMechanismUnitTest.java b/src/test/java/redis/clients/jedis/mcf/FailbackMechanismUnitTest.java
index 4e57b3c466..25de5a7c3e 100644
--- a/src/test/java/redis/clients/jedis/mcf/FailbackMechanismUnitTest.java
+++ b/src/test/java/redis/clients/jedis/mcf/FailbackMechanismUnitTest.java
@@ -32,7 +32,7 @@ void testFailbackCheckIntervalConfiguration() {
MultiClusterClientConfig defaultConfig = new MultiClusterClientConfig.Builder(
new MultiClusterClientConfig.ClusterConfig[] { clusterConfig }).build();
- assertEquals(5000, defaultConfig.getFailbackCheckInterval());
+ assertEquals(120000, defaultConfig.getFailbackCheckInterval());
// Test custom value
MultiClusterClientConfig customConfig = new MultiClusterClientConfig.Builder(
@@ -105,7 +105,7 @@ void testGracePeriodConfiguration() {
MultiClusterClientConfig defaultConfig = new MultiClusterClientConfig.Builder(
new MultiClusterClientConfig.ClusterConfig[] { clusterConfig }).build();
- assertEquals(10000, defaultConfig.getGracePeriod()); // Default is 10 seconds
+ assertEquals(60000, defaultConfig.getGracePeriod()); // Default is 10 seconds
// Test custom value
MultiClusterClientConfig customConfig = new MultiClusterClientConfig.Builder(
diff --git a/src/test/java/redis/clients/jedis/mcf/HealthCheckTest.java b/src/test/java/redis/clients/jedis/mcf/HealthCheckTest.java
index d81e012c1e..d7b61dcd20 100644
--- a/src/test/java/redis/clients/jedis/mcf/HealthCheckTest.java
+++ b/src/test/java/redis/clients/jedis/mcf/HealthCheckTest.java
@@ -531,7 +531,7 @@ void testStrategySupplierPolymorphism() {
// Test without config
HealthCheckStrategy strategyWithoutConfig = supplier.get(testEndpoint, null);
assertNotNull(strategyWithoutConfig);
- assertEquals(1000, strategyWithoutConfig.getInterval()); // Default values
+ assertEquals(5000, strategyWithoutConfig.getInterval()); // Default values
assertEquals(1000, strategyWithoutConfig.getTimeout());
}
diff --git a/src/test/java/redis/clients/jedis/mcf/LagAwareStrategyUnitTest.java b/src/test/java/redis/clients/jedis/mcf/LagAwareStrategyUnitTest.java
index 459b3be8c3..c985c0d06d 100644
--- a/src/test/java/redis/clients/jedis/mcf/LagAwareStrategyUnitTest.java
+++ b/src/test/java/redis/clients/jedis/mcf/LagAwareStrategyUnitTest.java
@@ -50,7 +50,7 @@ void healthy_when_bdb_available_and_cached_uid_used_on_next_check() throws Excep
try (MockedConstruction