Implemented ZREMRANGEBYRANK

This commit is contained in:
Jonathan Leibiusky
2010-08-07 18:34:42 -03:00
parent 111eb11440
commit bb54328802
4 changed files with 30 additions and 2 deletions

View File

@@ -463,4 +463,9 @@ public class Client extends Connection {
.valueOf(max), "LIMIT", String.valueOf(offset), String
.valueOf(count), "WITHSCORES");
}
public void zremrangeByRank(String key, int start, int end) {
sendCommand("ZREMRANGEBYRANK", key, String.valueOf(start), String
.valueOf(end));
}
}

View File

@@ -572,4 +572,9 @@ public class Jedis {
}
return set;
}
public int zremrangeByRank(String key, int start, int end) {
client.zremrangeByRank(key, start, end);
return client.getIntegerReply();
}
}

View File

@@ -252,4 +252,22 @@ public class SortedSetCommandsTest extends JedisCommandTestBase {
assertEquals(expected, range);
}
@Test
public void zremrangeByRank() {
jedis.zadd("foo", 1d, "a");
jedis.zadd("foo", 10d, "b");
jedis.zadd("foo", 0.1d, "c");
jedis.zadd("foo", 2d, "a");
int result = jedis.zremrangeByRank("foo", 0, 0);
assertEquals(1, result);
Set<String> expected = new LinkedHashSet<String>();
expected.add("a");
expected.add("b");
assertEquals(expected, jedis.zrange("foo", 0, 100));
}
}