Search in sources :

Example 1 with RedisClusterNode

use of org.springframework.data.redis.connection.RedisClusterNode in project spring-boot by spring-projects.

the class RedisHealthIndicatorTests method redisClusterIsUp.

@Test
public void redisClusterIsUp() throws Exception {
    Properties clusterProperties = new Properties();
    clusterProperties.setProperty("cluster_size", "4");
    clusterProperties.setProperty("cluster_slots_ok", "4");
    clusterProperties.setProperty("cluster_slots_fail", "0");
    List<RedisClusterNode> redisMasterNodes = Arrays.asList(new RedisClusterNode("127.0.0.1", 7001), new RedisClusterNode("127.0.0.2", 7001));
    RedisClusterConnection redisConnection = mock(RedisClusterConnection.class);
    given(redisConnection.clusterGetNodes()).willReturn(redisMasterNodes);
    given(redisConnection.clusterGetClusterInfo()).willReturn(new ClusterInfo(clusterProperties));
    RedisConnectionFactory redisConnectionFactory = mock(RedisConnectionFactory.class);
    given(redisConnectionFactory.getConnection()).willReturn(redisConnection);
    RedisHealthIndicator healthIndicator = new RedisHealthIndicator(redisConnectionFactory);
    Health health = healthIndicator.health();
    assertThat(health.getStatus()).isEqualTo(Status.UP);
    assertThat(health.getDetails().get("cluster_size")).isEqualTo(4L);
    assertThat(health.getDetails().get("slots_up")).isEqualTo(4L);
    assertThat(health.getDetails().get("slots_fail")).isEqualTo(0L);
    verify(redisConnectionFactory, atLeastOnce()).getConnection();
}
Also used : RedisClusterConnection(org.springframework.data.redis.connection.RedisClusterConnection) ClusterInfo(org.springframework.data.redis.connection.ClusterInfo) RedisClusterNode(org.springframework.data.redis.connection.RedisClusterNode) Properties(java.util.Properties) RedisConnectionFactory(org.springframework.data.redis.connection.RedisConnectionFactory) Test(org.junit.Test)

Aggregations

Properties (java.util.Properties)1 Test (org.junit.Test)1 ClusterInfo (org.springframework.data.redis.connection.ClusterInfo)1 RedisClusterConnection (org.springframework.data.redis.connection.RedisClusterConnection)1 RedisClusterNode (org.springframework.data.redis.connection.RedisClusterNode)1 RedisConnectionFactory (org.springframework.data.redis.connection.RedisConnectionFactory)1