Return AbstractRedisClient from LettuceConnectionFactory.

Closes #1745
Original Pull Request: #2013
This commit is contained in:
Mark Paluch
2021-03-23 10:23:31 +01:00
committed by Christoph Strobl
parent 503d639c5d
commit 73650cf943
2 changed files with 65 additions and 1 deletions

View File

@@ -989,6 +989,31 @@ class LettuceConnectionFactoryUnitTests {
assertThat(reactiveConnection).isInstanceOf(LettuceReactiveRedisClusterConnection.class);
}
@Test // GH-1745
void getNativeClientShouldReturnClient() {
LettuceConnectionFactory connectionFactory = new LettuceConnectionFactory();
connectionFactory.setClientResources(getSharedClientResources());
connectionFactory.afterPropertiesSet();
assertThat(connectionFactory.getNativeClient()).isInstanceOf(RedisClient.class);
connectionFactory = new LettuceConnectionFactory(clusterConfig);
connectionFactory.setClientResources(getSharedClientResources());
connectionFactory.afterPropertiesSet();
assertThat(connectionFactory.getRequiredNativeClient()).isInstanceOf(RedisClusterClient.class);
}
@Test // GH-1745
void getNativeClientShouldFailIfNotInitialized() {
LettuceConnectionFactory connectionFactory = new LettuceConnectionFactory();
assertThatIllegalStateException().isThrownBy(connectionFactory::getRequiredNativeClient)
.withMessage("Client not yet initialized");
}
@Data
@AllArgsConstructor
static class CustomRedisConfiguration implements RedisConfiguration, WithHostAndPort {