DATAREDIS-981 - Fix conversion of unlimited Limit objects for Lettuce.

We now use the proper Limit.unlimited() factory method for unlimited Limits.
This commit is contained in:
Mark Paluch
2019-05-13 09:53:08 +02:00
parent 9a49c80bbf
commit f13056c385
2 changed files with 20 additions and 2 deletions

View File

@@ -23,6 +23,7 @@ import static org.junit.Assert.*;
import static org.springframework.data.redis.connection.ClusterTestVariables.*;
import static org.springframework.test.util.ReflectionTestUtils.*;
import io.lettuce.core.Limit;
import io.lettuce.core.RedisURI;
import io.lettuce.core.SetArgs;
import io.lettuce.core.cluster.models.partitions.Partitions;
@@ -38,6 +39,7 @@ import org.springframework.data.redis.connection.RedisClusterNode;
import org.springframework.data.redis.connection.RedisClusterNode.Flag;
import org.springframework.data.redis.connection.RedisClusterNode.LinkState;
import org.springframework.data.redis.connection.RedisStringCommands.SetOption;
import org.springframework.data.redis.connection.RedisZSetCommands;
import org.springframework.data.redis.core.types.Expiration;
import org.springframework.data.redis.core.types.RedisClientInfo;
@@ -178,4 +180,20 @@ public class LettuceConvertersUnitTests {
assertThat((Boolean) getField(args, "nx"), is(Boolean.FALSE));
assertThat((Boolean) getField(args, "xx"), is(Boolean.FALSE));
}
@Test // DATAREDIS-981
public void toLimit() {
Limit limit = LettuceConverters.toLimit(RedisZSetCommands.Limit.unlimited());
assertThat(limit.isLimited(), is(false));
assertThat(limit.getCount(), is(-1L));
limit = LettuceConverters.toLimit(RedisZSetCommands.Limit.limit().count(-1));
assertThat(limit.isLimited(), is(true));
assertThat(limit.getCount(), is(-1L));
limit = LettuceConverters.toLimit(RedisZSetCommands.Limit.limit().count(5));
assertThat(limit.isLimited(), is(true));
assertThat(limit.getCount(), is(5L));
}
}