diff options
author | Andy McCurdy <andy@andymccurdy.com> | 2010-10-07 23:45:18 -0700 |
---|---|---|
committer | Andy McCurdy <andy@andymccurdy.com> | 2010-10-07 23:45:18 -0700 |
commit | 894c48b0979c4d07e6bc4fcf4366c7a71a41de71 (patch) | |
tree | 06f885ce20027acfc04e1e05c0b6b5b10a9730a8 /tests/server_commands.py | |
parent | 0c8715b40271488fb94497172c3d3dcd8e73b610 (diff) | |
download | redis-py-894c48b0979c4d07e6bc4fcf4366c7a71a41de71.tar.gz |
tests for linsert, lpushx, and rpushx
Diffstat (limited to 'tests/server_commands.py')
-rw-r--r-- | tests/server_commands.py | 42 |
1 files changed, 42 insertions, 0 deletions
diff --git a/tests/server_commands.py b/tests/server_commands.py index 3d4b3aa..9df004a 100644 --- a/tests/server_commands.py +++ b/tests/server_commands.py @@ -272,6 +272,24 @@ class ServerCommandsTestCase(unittest.TestCase): self.assertEquals(self.client.lindex('a', '1'), 'b') self.assertEquals(self.client.lindex('a', '2'), 'c') + def test_linsert(self): + # no key + self.assertEquals(self.client.linsert('a', 'after', 'x', 'y'), 0) + # key is not a list + self.client['a'] = 'b' + self.assertRaises( + redis.ResponseError, self.client.linsert, 'a', 'after', 'x', 'y' + ) + del self.client['a'] + # real logic + self.make_list('a', 'abc') + self.assertEquals(self.client.linsert('a', 'after', 'b', 'b1'), 4) + self.assertEquals(self.client.lrange('a', 0, -1), + ['a', 'b', 'b1', 'c']) + self.assertEquals(self.client.linsert('a', 'before', 'b', 'a1'), 5) + self.assertEquals(self.client.lrange('a', 0, -1), + ['a', 'a1', 'b', 'b1', 'c']) + def test_llen(self): # no key self.assertEquals(self.client.llen('a'), 0) @@ -313,6 +331,18 @@ class ServerCommandsTestCase(unittest.TestCase): self.assertEquals(self.client.lindex('a', 0), 'a') self.assertEquals(self.client.lindex('a', 1), 'b') + def test_lpushx(self): + # key is not a list + self.client['a'] = 'b' + self.assertRaises(redis.ResponseError, self.client.lpushx, 'a', 'a') + del self.client['a'] + # real logic + self.assertEquals(self.client.lpushx('a', 'b'), 0) + self.assertEquals(self.client.lrange('a', 0, -1), []) + self.make_list('a', 'abc') + self.assertEquals(self.client.lpushx('a', 'd'), 4) + self.assertEquals(self.client.lrange('a', 0, -1), ['d', 'a', 'b', 'c']) + def test_lrange(self): # no key self.assertEquals(self.client.lrange('a', 0, 1), []) @@ -436,6 +466,18 @@ class ServerCommandsTestCase(unittest.TestCase): self.assertEquals(self.client.lindex('a', 0), 'a') self.assertEquals(self.client.lindex('a', 1), 'b') + def test_rpushx(self): + # key is not a list + self.client['a'] = 'b' + self.assertRaises(redis.ResponseError, self.client.rpushx, 'a', 'a') + del self.client['a'] + # real logic + self.assertEquals(self.client.rpushx('a', 'b'), 0) + self.assertEquals(self.client.lrange('a', 0, -1), []) + self.make_list('a', 'abc') + self.assertEquals(self.client.rpushx('a', 'd'), 4) + self.assertEquals(self.client.lrange('a', 0, -1), ['a', 'b', 'c', 'd']) + # Set commands def make_set(self, name, l): for i in l: |