Implemented all the sorting parameters

This commit is contained in:
Jonathan Leibiusky
2010-08-03 01:20:01 -03:00
parent 350865c868
commit dea8c12d1e
5 changed files with 85 additions and 4 deletions

View File

@@ -39,4 +39,12 @@ public class SortingParams {
params.add("ALPHA");
return this;
}
public SortingParams get(String... patterns) {
for (String pattern : patterns) {
params.add("GET");
params.add(pattern);
}
return this;
}
}

View File

@@ -124,4 +124,52 @@ public class SortingCommandsTest extends Assert {
assertEquals(expected, result);
}
@Test
public void sortGet() throws JedisException {
jedis.lpush("foo", "1");
jedis.lpush("foo", "2");
jedis.lpush("foo", "10");
jedis.set("bar1", "bar1");
jedis.set("bar2", "bar2");
jedis.set("bar10", "bar10");
jedis.set("car1", "car1");
jedis.set("car2", "car2");
jedis.set("car10", "car10");
SortingParams sp = new SortingParams();
sp.get("car*", "bar*");
List<String> result = jedis.sort("foo", sp);
List<String> expected = new ArrayList<String>();
expected.add("car1");
expected.add("bar1");
expected.add("car2");
expected.add("bar2");
expected.add("car10");
expected.add("bar10");
assertEquals(expected, result);
}
@Test
public void sortStore() throws JedisException {
jedis.lpush("foo", "1");
jedis.lpush("foo", "2");
jedis.lpush("foo", "10");
int result = jedis.sort("foo", "result");
List<String> expected = new ArrayList<String>();
expected.add("1");
expected.add("2");
expected.add("10");
assertEquals(3, result);
assertEquals(expected, jedis.lrange("result", 0, 1000));
}
}