package com.lambdaworks.redis.cluster; import static org.assertj.core.api.Assertions.assertThat; import java.util.concurrent.TimeUnit; import org.junit.Test; /** * @author Mark Paluch */ public class ClusterClientOptionsTest { @Test public void testCopy() throws Exception { ClusterClientOptions options = ClusterClientOptions.builder().closeStaleConnections(true).refreshClusterView(true) .autoReconnect(false).requestQueueSize(100).suspendReconnectOnProtocolFailure(true).maxRedirects(1234) .validateClusterNodeMembership(false).build(); ClusterClientOptions copy = ClusterClientOptions.copyOf(options); assertThat(copy.getRefreshPeriod()).isEqualTo(options.getRefreshPeriod()); assertThat(copy.getRefreshPeriodUnit()).isEqualTo(options.getRefreshPeriodUnit()); assertThat(copy.isCloseStaleConnections()).isEqualTo(options.isCloseStaleConnections()); assertThat(copy.isRefreshClusterView()).isEqualTo(options.isRefreshClusterView()); assertThat(copy.isValidateClusterNodeMembership()).isEqualTo(options.isValidateClusterNodeMembership()); assertThat(copy.getRequestQueueSize()).isEqualTo(options.getRequestQueueSize()); assertThat(copy.isAutoReconnect()).isEqualTo(options.isAutoReconnect()); assertThat(copy.isCancelCommandsOnReconnectFailure()).isEqualTo(options.isCancelCommandsOnReconnectFailure()); assertThat(copy.isSuspendReconnectOnProtocolFailure()).isEqualTo(options.isSuspendReconnectOnProtocolFailure()); assertThat(copy.getMaxRedirects()).isEqualTo(options.getMaxRedirects()); } @Test public void enablesRefreshUsingDeprecatedMethods() throws Exception { ClusterClientOptions options = ClusterClientOptions.builder().refreshClusterView(true) .refreshPeriod(10, TimeUnit.MINUTES).build(); assertThat(options.getRefreshPeriod()).isEqualTo(10); assertThat(options.getRefreshPeriodUnit()).isEqualTo(TimeUnit.MINUTES); assertThat(options.isRefreshClusterView()).isEqualTo(true); } }