DATAREDIS-842 - Polishing.
Reformat code. Add author tags. Add integration test. Original pull request: #345.
This commit is contained in:
@@ -77,6 +77,7 @@ import org.springframework.util.ClassUtils;
|
||||
* @author Christoph Strobl
|
||||
* @author Mark Paluch
|
||||
* @author Balázs Németh
|
||||
* @author Ruben Cervilla
|
||||
*/
|
||||
public class LettuceConnectionFactory
|
||||
implements InitializingBean, DisposableBean, RedisConnectionFactory, ReactiveRedisConnectionFactory {
|
||||
|
||||
@@ -29,9 +29,6 @@ import io.lettuce.core.ClientOptions;
|
||||
import io.lettuce.core.RedisClient;
|
||||
import io.lettuce.core.RedisURI;
|
||||
import io.lettuce.core.cluster.RedisClusterClient;
|
||||
import io.lettuce.core.cluster.api.StatefulRedisClusterConnection;
|
||||
import io.lettuce.core.codec.ByteArrayCodec;
|
||||
import io.lettuce.core.codec.RedisCodec;
|
||||
import io.lettuce.core.resource.ClientResources;
|
||||
|
||||
import java.security.NoSuchAlgorithmException;
|
||||
@@ -41,8 +38,6 @@ import java.util.Collections;
|
||||
import org.junit.After;
|
||||
import org.junit.Before;
|
||||
import org.junit.Test;
|
||||
import org.mockito.ArgumentMatchers;
|
||||
import org.springframework.beans.DirectFieldAccessor;
|
||||
import org.springframework.data.redis.ConnectionFactoryTracker;
|
||||
import org.springframework.data.redis.connection.RedisClusterConfiguration;
|
||||
import org.springframework.data.redis.connection.RedisClusterConnection;
|
||||
@@ -57,6 +52,7 @@ import org.springframework.test.util.ReflectionTestUtils;
|
||||
* @author Christoph Strobl
|
||||
* @author Mark Paluch
|
||||
* @author Balázs Németh
|
||||
* @author Ruben Cervilla
|
||||
*/
|
||||
public class LettuceConnectionFactoryUnitTests {
|
||||
|
||||
@@ -68,7 +64,7 @@ public class LettuceConnectionFactoryUnitTests {
|
||||
}
|
||||
|
||||
@After
|
||||
public void tearDown() throws Exception {
|
||||
public void tearDown() {
|
||||
ConnectionFactoryTracker.cleanUp();
|
||||
}
|
||||
|
||||
@@ -527,7 +523,8 @@ public class LettuceConnectionFactoryUnitTests {
|
||||
@Test // DATAREDIS-842
|
||||
public void databaseShouldBeSetCorrectlyOnSentinelClient() {
|
||||
|
||||
RedisSentinelConfiguration redisSentinelConfiguration = new RedisSentinelConfiguration("mymaster", Collections.singleton("host:1234"));
|
||||
RedisSentinelConfiguration redisSentinelConfiguration = new RedisSentinelConfiguration("mymaster",
|
||||
Collections.singleton("host:1234"));
|
||||
redisSentinelConfiguration.setDatabase(1);
|
||||
LettuceConnectionFactory connectionFactory = new LettuceConnectionFactory(redisSentinelConfiguration);
|
||||
connectionFactory.setClientResources(getSharedClientResources());
|
||||
|
||||
@@ -35,6 +35,7 @@ import org.junit.runners.Parameterized.Parameters;
|
||||
import org.springframework.data.redis.ConnectionFactoryTracker;
|
||||
import org.springframework.data.redis.connection.AbstractConnectionIntegrationTests;
|
||||
import org.springframework.data.redis.connection.DefaultStringRedisConnection;
|
||||
import org.springframework.data.redis.connection.RedisConnection;
|
||||
import org.springframework.data.redis.connection.RedisSentinelConfiguration;
|
||||
import org.springframework.data.redis.connection.RedisSentinelConnection;
|
||||
import org.springframework.data.redis.connection.RedisServer;
|
||||
@@ -56,8 +57,14 @@ public class LettuceSentinelIntegrationTests extends AbstractConnectionIntegrati
|
||||
private static final RedisServer SLAVE_0 = new RedisServer("127.0.0.1", 6380);
|
||||
private static final RedisServer SLAVE_1 = new RedisServer("127.0.0.1", 6381);
|
||||
|
||||
private static final RedisSentinelConfiguration SENTINEL_CONFIG = new RedisSentinelConfiguration() //
|
||||
.master(MASTER_NAME).sentinel(SENTINEL_0).sentinel(SENTINEL_1);
|
||||
private static final RedisSentinelConfiguration SENTINEL_CONFIG;
|
||||
static {
|
||||
|
||||
SENTINEL_CONFIG = new RedisSentinelConfiguration() //
|
||||
.master(MASTER_NAME).sentinel(SENTINEL_0).sentinel(SENTINEL_1);
|
||||
|
||||
SENTINEL_CONFIG.setDatabase(5);
|
||||
}
|
||||
|
||||
public static @ClassRule RedisSentinelRule sentinelRule = RedisSentinelRule.forConfig(SENTINEL_CONFIG).oneActive();
|
||||
public @Rule MinimumRedisVersionRule minimumVersionRule = new MinimumRedisVersionRule();
|
||||
@@ -118,6 +125,30 @@ public class LettuceSentinelIntegrationTests extends AbstractConnectionIntegrati
|
||||
assertThat(servers.get(0).getName(), is(MASTER_NAME));
|
||||
}
|
||||
|
||||
@Test // DATAREDIS-842
|
||||
public void shouldUseSpecifiedDatabase() {
|
||||
|
||||
RedisConnection connection = connectionFactory.getConnection();
|
||||
|
||||
connection.flushDb();
|
||||
connection.set("foo".getBytes(), "bar".getBytes());
|
||||
connection.close();
|
||||
|
||||
LettuceConnectionFactory connectionFactory = new LettuceConnectionFactory();
|
||||
connectionFactory.setClientResources(LettuceTestClientResources.getSharedClientResources());
|
||||
connectionFactory.setShutdownTimeout(0);
|
||||
connectionFactory.setShareNativeConnection(false);
|
||||
connectionFactory.afterPropertiesSet();
|
||||
|
||||
RedisConnection directConnection = connectionFactory.getConnection();
|
||||
assertThat(directConnection.exists("foo".getBytes()), is(false));
|
||||
directConnection.select(5);
|
||||
|
||||
assertThat(directConnection.exists("foo".getBytes()), is(true));
|
||||
directConnection.close();
|
||||
connectionFactory.destroy();
|
||||
}
|
||||
|
||||
@Test // DATAREDIS-348
|
||||
public void shouldReadSlavesOfMastersCorrectly() {
|
||||
|
||||
|
||||
Reference in New Issue
Block a user