|
|
|
@ -16,11 +16,7 @@ import org.junit.Assert;
|
|
|
|
|
import org.junit.Test;
|
|
|
|
|
import org.redisson.ClusterRunner.ClusterProcesses;
|
|
|
|
|
import org.redisson.RedisRunner.FailedToStartRedisException;
|
|
|
|
|
import org.redisson.api.RFuture;
|
|
|
|
|
import org.redisson.api.RList;
|
|
|
|
|
import org.redisson.api.RSet;
|
|
|
|
|
import org.redisson.api.RedissonClient;
|
|
|
|
|
import org.redisson.api.SortOrder;
|
|
|
|
|
import org.redisson.api.*;
|
|
|
|
|
import org.redisson.client.codec.IntegerCodec;
|
|
|
|
|
import org.redisson.client.codec.StringCodec;
|
|
|
|
|
import org.redisson.config.Config;
|
|
|
|
@ -149,14 +145,137 @@ public class RedissonSetTest extends BaseTest {
|
|
|
|
|
Collection<String> ascSort = list.readSort("test*", Arrays.asList("tester*"), SortOrder.ASC, 1, 2);
|
|
|
|
|
assertThat(ascSort).containsExactly("obj2", "obj3");
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
@Test
|
|
|
|
|
public void testSortAlpha(){
|
|
|
|
|
RSet<String> set = redisson.getSet("list", StringCodec.INSTANCE);
|
|
|
|
|
set.add("1");
|
|
|
|
|
set.add("3");
|
|
|
|
|
set.add("12");
|
|
|
|
|
|
|
|
|
|
assertThat(set.readSort(null, null, SortOrder.ASC, -1, -1, true))
|
|
|
|
|
.containsExactly("1", "12", "3");
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@Test
|
|
|
|
|
public void testSortOrderAlpha(){
|
|
|
|
|
RSet<String> set = redisson.getSet("list", StringCodec.INSTANCE);
|
|
|
|
|
set.add("1");
|
|
|
|
|
set.add("3");
|
|
|
|
|
set.add("12");
|
|
|
|
|
|
|
|
|
|
assertThat(set.readSort(null, null, SortOrder.DESC, -1, -1, true))
|
|
|
|
|
.containsExactly("3", "12", "1");
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@Test
|
|
|
|
|
public void testSortOrderLimitAlpha(){
|
|
|
|
|
RSet<String> set = redisson.getSet("list", StringCodec.INSTANCE);
|
|
|
|
|
set.add("1");
|
|
|
|
|
set.add("3");
|
|
|
|
|
set.add("12");
|
|
|
|
|
|
|
|
|
|
assertThat(set.readSort(null, null, SortOrder.DESC, 0, 2, true))
|
|
|
|
|
.containsExactly("3", "12");
|
|
|
|
|
assertThat(set.readSort(null, null, SortOrder.DESC, 1, 2, true))
|
|
|
|
|
.containsExactly("12", "1");
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@Test
|
|
|
|
|
public void testSortOrderByPatternAlpha(){
|
|
|
|
|
RSet<Integer> set = redisson.getSet("list", IntegerCodec.INSTANCE);
|
|
|
|
|
set.add(1);
|
|
|
|
|
set.add(2);
|
|
|
|
|
set.add(3);
|
|
|
|
|
|
|
|
|
|
redisson.getBucket("test1", IntegerCodec.INSTANCE).set(12);
|
|
|
|
|
redisson.getBucket("test2", IntegerCodec.INSTANCE).set(3);
|
|
|
|
|
redisson.getBucket("test3", IntegerCodec.INSTANCE).set(1);
|
|
|
|
|
|
|
|
|
|
Collection<Integer> descSort = set
|
|
|
|
|
.readSort("test*", null, SortOrder.DESC,-1, -1, true);
|
|
|
|
|
assertThat(descSort).containsExactly(2, 1, 3);
|
|
|
|
|
|
|
|
|
|
Collection<Integer> ascSort = set
|
|
|
|
|
.readSort("test*", null, SortOrder.ASC, -1, -1, true);
|
|
|
|
|
assertThat(ascSort).containsExactly(3, 1, 2);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@Test
|
|
|
|
|
public void testSortOrderByPatternAlphaLimit(){
|
|
|
|
|
RSet<Integer> set = redisson.getSet("list", IntegerCodec.INSTANCE);
|
|
|
|
|
set.add(1);
|
|
|
|
|
set.add(2);
|
|
|
|
|
set.add(3);
|
|
|
|
|
|
|
|
|
|
redisson.getBucket("test1", IntegerCodec.INSTANCE).set(12);
|
|
|
|
|
redisson.getBucket("test2", IntegerCodec.INSTANCE).set(3);
|
|
|
|
|
redisson.getBucket("test3", IntegerCodec.INSTANCE).set(1);
|
|
|
|
|
|
|
|
|
|
Collection<Integer> descSort = set
|
|
|
|
|
.readSort("test*", null, SortOrder.DESC,1, 2, true);
|
|
|
|
|
assertThat(descSort).containsExactly(1, 3);
|
|
|
|
|
|
|
|
|
|
Collection<Integer> ascSort = set
|
|
|
|
|
.readSort("test*", null, SortOrder.ASC,1, 2, true);
|
|
|
|
|
assertThat(ascSort).containsExactly(1, 2);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@Test
|
|
|
|
|
public void testSortOrderByPatternGetAlpha() {
|
|
|
|
|
RSet<String> set = redisson.getSet("list", StringCodec.INSTANCE);
|
|
|
|
|
set.add("1");
|
|
|
|
|
set.add("2");
|
|
|
|
|
set.add("3");
|
|
|
|
|
|
|
|
|
|
redisson.getBucket("test1", IntegerCodec.INSTANCE).set(12);
|
|
|
|
|
redisson.getBucket("test2", IntegerCodec.INSTANCE).set(3);
|
|
|
|
|
redisson.getBucket("test3", IntegerCodec.INSTANCE).set(1);
|
|
|
|
|
|
|
|
|
|
redisson.getBucket("tester1", StringCodec.INSTANCE).set("obj1");
|
|
|
|
|
redisson.getBucket("tester2", StringCodec.INSTANCE).set("obj2");
|
|
|
|
|
redisson.getBucket("tester3", StringCodec.INSTANCE).set("obj3");
|
|
|
|
|
|
|
|
|
|
Collection<String> descSort = set
|
|
|
|
|
.readSort("test*", Arrays.asList("tester*"), SortOrder.DESC,-1, -1, true);
|
|
|
|
|
assertThat(descSort).containsExactly("obj2", "obj1", "obj3");
|
|
|
|
|
|
|
|
|
|
Collection<String> ascSort = set
|
|
|
|
|
.readSort("test*", Arrays.asList("tester*"), SortOrder.ASC,-1, -1, true);
|
|
|
|
|
assertThat(ascSort).containsExactly("obj3", "obj1", "obj2");
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@Test
|
|
|
|
|
public void testSortOrderByPatternGetAlphaLimit() {
|
|
|
|
|
RSet<String> set = redisson.getSet("list", StringCodec.INSTANCE);
|
|
|
|
|
set.add("1");
|
|
|
|
|
set.add("2");
|
|
|
|
|
set.add("3");
|
|
|
|
|
|
|
|
|
|
redisson.getBucket("test1", IntegerCodec.INSTANCE).set(12);
|
|
|
|
|
redisson.getBucket("test2", IntegerCodec.INSTANCE).set(3);
|
|
|
|
|
redisson.getBucket("test3", IntegerCodec.INSTANCE).set(1);
|
|
|
|
|
|
|
|
|
|
redisson.getBucket("tester1", StringCodec.INSTANCE).set("obj1");
|
|
|
|
|
redisson.getBucket("tester2", StringCodec.INSTANCE).set("obj2");
|
|
|
|
|
redisson.getBucket("tester3", StringCodec.INSTANCE).set("obj3");
|
|
|
|
|
|
|
|
|
|
Collection<String> descSort = set
|
|
|
|
|
.readSort("test*", Arrays.asList("tester*"), SortOrder.DESC,1, 2, true);
|
|
|
|
|
assertThat(descSort).containsExactly("obj1", "obj3");
|
|
|
|
|
|
|
|
|
|
Collection<String> ascSort = set
|
|
|
|
|
.readSort("test*", Arrays.asList("tester*"), SortOrder.ASC,1, 2, true);
|
|
|
|
|
assertThat(ascSort).containsExactly("obj1", "obj2");
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@Test
|
|
|
|
|
public void testSortTo() {
|
|
|
|
|
RSet<String> list = redisson.getSet("list", IntegerCodec.INSTANCE);
|
|
|
|
|
list.add("1");
|
|
|
|
|
list.add("2");
|
|
|
|
|
list.add("3");
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
assertThat(list.sortTo("test3", SortOrder.DESC)).isEqualTo(3);
|
|
|
|
|
RList<String> list2 = redisson.getList("test3", StringCodec.INSTANCE);
|
|
|
|
|
assertThat(list2).containsExactly("3", "2", "1");
|
|
|
|
|