diff --git a/src/main/java/redis/clients/jedis/Tuple.java b/src/main/java/redis/clients/jedis/Tuple.java index dd698e0..211a9e9 100644 --- a/src/main/java/redis/clients/jedis/Tuple.java +++ b/src/main/java/redis/clients/jedis/Tuple.java @@ -4,11 +4,10 @@ import java.util.Arrays; import redis.clients.util.SafeEncoder; -public class Tuple implements Comparable { +public class Tuple implements Comparable { private byte[] element; private Double score; - @Override public int hashCode() { final int prime = 31; int result = 1; @@ -24,7 +23,6 @@ public class Tuple implements Comparable { return result; } - @Override public boolean equals(Object obj) { if (this == obj) return true; @@ -47,12 +45,6 @@ public class Tuple implements Comparable { else return this.score < other.getScore() ? -1 : 1; } - public int compareTo(Object obj) { - if (getClass() != obj.getClass()) - throw new ClassCastException(); - return compareTo((Tuple) obj); - } - public Tuple(String element, Double score) { super(); @@ -85,4 +77,4 @@ public class Tuple implements Comparable { public String toString() { return '[' + Arrays.toString(element) + ',' + score + ']'; } -} +} \ No newline at end of file diff --git a/src/test/java/redis/clients/jedis/tests/commands/SortedSetCommandsTest.java b/src/test/java/redis/clients/jedis/tests/commands/SortedSetCommandsTest.java index aa1a88e..4135fba 100644 --- a/src/test/java/redis/clients/jedis/tests/commands/SortedSetCommandsTest.java +++ b/src/test/java/redis/clients/jedis/tests/commands/SortedSetCommandsTest.java @@ -457,20 +457,23 @@ public class SortedSetCommandsTest extends JedisCommandTestBase { jedis.zadd("foo", 4.0d, "d"); jedis.zadd("foo", 5.0d, "e"); - Set range = jedis.zrevrangeByScore("foo", 3d, Double.NEGATIVE_INFINITY, 0, 1); + Set range = jedis.zrevrangeByScore("foo", 3d, + Double.NEGATIVE_INFINITY, 0, 1); Set expected = new LinkedHashSet(); expected.add("c"); assertEquals(expected, range); - range = jedis.zrevrangeByScore("foo", 3.5d, Double.NEGATIVE_INFINITY, 0, 2); + range = jedis.zrevrangeByScore("foo", 3.5d, Double.NEGATIVE_INFINITY, + 0, 2); expected = new LinkedHashSet(); expected.add("c"); expected.add("b"); assertEquals(expected, range); - range = jedis.zrevrangeByScore("foo", 3.5d, Double.NEGATIVE_INFINITY, 1, 1); + range = jedis.zrevrangeByScore("foo", 3.5d, Double.NEGATIVE_INFINITY, + 1, 1); expected = new LinkedHashSet(); expected.add("b"); @@ -594,20 +597,23 @@ public class SortedSetCommandsTest extends JedisCommandTestBase { jedis.zadd("foo", 4.0d, "d"); jedis.zadd("foo", 5.0d, "e"); - Set range = jedis.zrevrangeByScoreWithScores("foo", 3d, Double.NEGATIVE_INFINITY, 0, 1); + Set range = jedis.zrevrangeByScoreWithScores("foo", 3d, + Double.NEGATIVE_INFINITY, 0, 1); Set expected = new LinkedHashSet(); expected.add(new Tuple("c", 3.0d)); assertEquals(expected, range); - range = jedis.zrevrangeByScoreWithScores("foo", 3.5d, Double.NEGATIVE_INFINITY, 0, 2); + range = jedis.zrevrangeByScoreWithScores("foo", 3.5d, + Double.NEGATIVE_INFINITY, 0, 2); expected = new LinkedHashSet(); expected.add(new Tuple("c", 3.0d)); expected.add(new Tuple("b", 2.0d)); assertEquals(expected, range); - range = jedis.zrevrangeByScoreWithScores("foo", 3.5d, Double.NEGATIVE_INFINITY, 1, 1); + range = jedis.zrevrangeByScoreWithScores("foo", 3.5d, + Double.NEGATIVE_INFINITY, 1, 1); expected = new LinkedHashSet(); expected.add(new Tuple("b", 2.0d)); @@ -862,4 +868,14 @@ public class SortedSetCommandsTest extends JedisCommandTestBase { assertEquals(bexpected, jedis.zrangeWithScores(SafeEncoder .encode("dst"), 0, 100)); } + + @Test + public void tupleCompare() { + Tuple t1 = new Tuple("foo", 1d); + Tuple t2 = new Tuple("bar", 2d); + + assertEquals(-1, t1.compareTo(t2)); + assertEquals(1, t2.compareTo(t1)); + assertEquals(0, t2.compareTo(t2)); + } } \ No newline at end of file