From 2cf40fc7c0a41d4ecffff89f23bec87fa816d643 Mon Sep 17 00:00:00 2001 From: Mark Paluch Date: Thu, 13 Feb 2020 11:56:18 +0100 Subject: [PATCH] DATAREDIS-1093 - Polishing. Associate test ClientResources with LettuceConnectionFactory where it was missing to reuse ClientResources as much as possible. --- .../data/redis/cache/CacheTestParams.java | 14 +++++++------- .../lettuce/LettuceConnectionFactoryTests.java | 13 +++++++++---- 2 files changed, 16 insertions(+), 11 deletions(-) diff --git a/src/test/java/org/springframework/data/redis/cache/CacheTestParams.java b/src/test/java/org/springframework/data/redis/cache/CacheTestParams.java index 0e9bb92e5..863c6c426 100644 --- a/src/test/java/org/springframework/data/redis/cache/CacheTestParams.java +++ b/src/test/java/org/springframework/data/redis/cache/CacheTestParams.java @@ -34,6 +34,7 @@ import org.springframework.data.redis.connection.RedisConnectionFactory; import org.springframework.data.redis.connection.RedisStandaloneConfiguration; import org.springframework.data.redis.connection.jedis.JedisConnectionFactory; import org.springframework.data.redis.connection.lettuce.LettuceConnectionFactory; +import org.springframework.data.redis.connection.lettuce.LettuceTestClientResources; import org.springframework.data.redis.serializer.GenericJackson2JsonRedisSerializer; import org.springframework.data.redis.serializer.JdkSerializationRedisSerializer; import org.springframework.data.redis.serializer.OxmSerializer; @@ -62,6 +63,7 @@ class CacheTestParams { // Lettuce Standalone LettuceConnectionFactory lettuceConnectionFactory = new LettuceConnectionFactory(config); + lettuceConnectionFactory.setClientResources(LettuceTestClientResources.getSharedClientResources()); lettuceConnectionFactory.afterPropertiesSet(); factoryList.add(new FixDamnedJunitParameterizedNameForConnectionFactory(lettuceConnectionFactory, "")); @@ -78,6 +80,7 @@ class CacheTestParams { // Lettuce Cluster LettuceConnectionFactory lettuceClusterConnectionFactory = new LettuceConnectionFactory(clusterConfiguration); + lettuceClusterConnectionFactory.setClientResources(LettuceTestClientResources.getSharedClientResources()); lettuceClusterConnectionFactory.afterPropertiesSet(); factoryList @@ -101,13 +104,10 @@ class CacheTestParams { GenericJackson2JsonRedisSerializer jackson2Serializer = new GenericJackson2JsonRedisSerializer(); JdkSerializationRedisSerializer jdkSerializer = new JdkSerializationRedisSerializer(); - return connectionFactories() - .stream().flatMap(factory -> Arrays - .asList( // - new Object[] { factory, new FixDamnedJunitParameterizedNameForRedisSerializer(jdkSerializer) }, // - new Object[] { factory, new FixDamnedJunitParameterizedNameForRedisSerializer(jackson2Serializer) }, // - new Object[] { factory, new FixDamnedJunitParameterizedNameForRedisSerializer(oxmSerializer) }) - .stream()) + return connectionFactories().stream().flatMap(factory -> Arrays.asList( // + new Object[] { factory, new FixDamnedJunitParameterizedNameForRedisSerializer(jdkSerializer) }, // + new Object[] { factory, new FixDamnedJunitParameterizedNameForRedisSerializer(jackson2Serializer) }, // + new Object[] { factory, new FixDamnedJunitParameterizedNameForRedisSerializer(oxmSerializer) }).stream()) .collect(Collectors.toList()); } diff --git a/src/test/java/org/springframework/data/redis/connection/lettuce/LettuceConnectionFactoryTests.java b/src/test/java/org/springframework/data/redis/connection/lettuce/LettuceConnectionFactoryTests.java index af814240b..86d015382 100644 --- a/src/test/java/org/springframework/data/redis/connection/lettuce/LettuceConnectionFactoryTests.java +++ b/src/test/java/org/springframework/data/redis/connection/lettuce/LettuceConnectionFactoryTests.java @@ -15,8 +15,11 @@ */ package org.springframework.data.redis.connection.lettuce; +import static org.assertj.core.api.Assertions.assertThat; +import static org.assertj.core.api.Assertions.assertThatThrownBy; import static org.hamcrest.Matchers.*; import static org.junit.Assert.*; +import static org.junit.Assert.assertThat; import static org.junit.Assume.*; import io.lettuce.core.EpollProvider; @@ -37,6 +40,7 @@ import org.junit.AfterClass; import org.junit.Before; import org.junit.Ignore; import org.junit.Test; + import org.springframework.data.redis.ConnectionFactoryTracker; import org.springframework.data.redis.RedisConnectionFailureException; import org.springframework.data.redis.RedisSystemException; @@ -435,7 +439,8 @@ public class LettuceConnectionFactoryTests { assumeTrue(EpollProvider.isAvailable() || KqueueProvider.isAvailable()); assumeTrue(new File(SettingsUtils.getSocket()).exists()); - LettuceClientConfiguration configuration = LettuceTestClientConfiguration.create(); + LettuceClientConfiguration configuration = LettuceTestClientConfiguration.builder() + .clientResources(LettuceTestClientResources.getSharedClientResources()).build(); LettuceConnectionFactory factory = new LettuceConnectionFactory(SettingsUtils.socketConfiguration(), configuration); factory.setShareNativeConnection(false); @@ -455,7 +460,7 @@ public class LettuceConnectionFactoryTests { connection.info("replication").getProperty("connected_slaves", "0").compareTo("0") > 0, is(true)); LettuceClientConfiguration configuration = LettuceTestClientConfiguration.builder().readFrom(ReadFrom.SLAVE) - .build(); + .clientResources(LettuceTestClientResources.getSharedClientResources()).build(); RedisStaticMasterReplicaConfiguration elastiCache = new RedisStaticMasterReplicaConfiguration( SettingsUtils.getHost()).node(SettingsUtils.getHost(), SettingsUtils.getPort() + 1); @@ -490,8 +495,8 @@ public class LettuceConnectionFactoryTests { RedisConnection connection = factory.getConnection(); - assertThatThrownBy(() -> connection.pSubscribe((message, pattern) -> { - }, "foo".getBytes())).isInstanceOf(RedisSystemException.class).hasCauseInstanceOf(UnsupportedOperationException.class); + assertThatThrownBy(() -> connection.pSubscribe((message, pattern) -> {}, "foo".getBytes())) + .isInstanceOf(RedisSystemException.class).hasCauseInstanceOf(UnsupportedOperationException.class); connection.close(); factory.destroy();