summaryrefslogtreecommitdiff
path: root/tests/server_commands.py
diff options
context:
space:
mode:
authorAndy McCurdy <andy@andymccurdy.com>2010-03-15 11:35:29 -0700
committerAndy McCurdy <andy@andymccurdy.com>2010-03-15 11:35:29 -0700
commit9ada0de4a3fc25cbba246d63eea674fcce814a54 (patch)
tree280ab4b739827942627b676564bf494ceb3663ff /tests/server_commands.py
parenta33431a07c2798b7b1c96e13f8d93582eb309f58 (diff)
downloadredis-py-9ada0de4a3fc25cbba246d63eea674fcce814a54.tar.gz
added ZRANK and ZREVRANK commands.
Diffstat (limited to 'tests/server_commands.py')
-rw-r--r--tests/server_commands.py27
1 files changed, 26 insertions, 1 deletions
diff --git a/tests/server_commands.py b/tests/server_commands.py
index b7ce7e3..0ddb7cb 100644
--- a/tests/server_commands.py
+++ b/tests/server_commands.py
@@ -611,6 +611,19 @@ class ServerCommandsTestCase(unittest.TestCase):
[('a2', 2.0), ('a3', 3.0), ('a4', 4.0)])
# a non existant key should return None
self.assertEquals(self.client.zrangebyscore('b', 0, 1, withscores=True), None)
+
+ def test_zrank(self):
+ # key is not a zset
+ self.client['a'] = 'a'
+ self.assertRaises(redis.ResponseError, self.client.zrank, 'a', 'a4')
+ del self.client['a']
+ # real logic
+ self.make_zset('a', {'a1': 1, 'a2': 2, 'a3': 3, 'a4': 4, 'a5': 5})
+ self.assertEquals(self.client.zrank('a', 'a1'), 0)
+ self.assertEquals(self.client.zrank('a', 'a2'), 1)
+ self.assertEquals(self.client.zrank('a', 'a3'), 2)
+ self.assertEquals(self.client.zrank('a', 'a4'), 3)
+ self.assertEquals(self.client.zrank('a', 'a5'), 4)
def test_zrem(self):
# key is not a zset
@@ -653,7 +666,19 @@ class ServerCommandsTestCase(unittest.TestCase):
[('a2', 2.0), ('a1', 1.0)])
# a non existant key should return None
self.assertEquals(self.client.zrange('b', 0, 1, withscores=True), None)
-
+
+ def test_zrevrank(self):
+ # key is not a zset
+ self.client['a'] = 'a'
+ self.assertRaises(redis.ResponseError, self.client.zrevrank, 'a', 'a4')
+ del self.client['a']
+ # real logic
+ self.make_zset('a', {'a1': 5, 'a2': 4, 'a3': 3, 'a4': 2, 'a5': 1})
+ self.assertEquals(self.client.zrevrank('a', 'a1'), 0)
+ self.assertEquals(self.client.zrevrank('a', 'a2'), 1)
+ self.assertEquals(self.client.zrevrank('a', 'a3'), 2)
+ self.assertEquals(self.client.zrevrank('a', 'a4'), 3)
+ self.assertEquals(self.client.zrevrank('a', 'a5'), 4)
def test_zscore(self):
# key is not a zset