test/redis_test.rb in ohm-0.0.28 vs test/redis_test.rb in ohm-0.0.29
- old
+ new
@@ -12,10 +12,16 @@
@bar == other.bar
end
end
class RedisTest < Test::Unit::TestCase
+ setup do
+ @legacy ||= begin
+ Ohm.redis.info[:redis_version] <= "1.02"
+ end
+ end
+
describe "redis" do
setup do
@r ||= Ohm.redis
@r.set("foo", "bar")
end
@@ -39,13 +45,15 @@
@r.setnx("foo", "bar")
assert_equal "nik", @r.get("foo")
end
should "be able to MSET keys" do
- @r.mset(:foo => "foobar", :bar => 1000)
- assert_equal ["foobar", "1000"], @r.mget("foo", "bar")
- assert_equal ["foobar", "1000", nil], @r.mget("foo", "bar", "baz")
+ unless @legacy
+ @r.mset(:foo => "foobar", :bar => 1000)
+ assert_equal ["foobar", "1000"], @r.mget("foo", "bar")
+ assert_equal ["foobar", "1000", nil], @r.mget("foo", "bar", "baz")
+ end
end
should "be able to MGET keys" do
@r.set("foo", 1000)
@r.set("bar", 2000)
@@ -222,23 +230,25 @@
assert_equal ["goodbye"], @r.lrange("list", 0, -1)
@r.del("list")
end
should "be able to pop values from a list and push them onto a temp list with RPOPLPUSH" do
- @r.rpush "list", 'one'
- @r.rpush "list", 'two'
- @r.rpush "list", 'three'
- assert_equal "list", @r.type('list')
- assert_equal 3, @r.llen('list')
- assert_equal %w(one two three), @r.lrange('list',0,-1)
- assert_equal [], @r.lrange('tmp',0,-1)
- assert_equal "three", @r.rpoplpush('list', 'tmp')
- assert_equal %w(three), @r.lrange('tmp',0,-1)
- assert_equal "two", @r.rpoplpush('list', 'tmp')
- assert_equal %w(two three), @r.lrange('tmp',0,-1)
- assert_equal "one", @r.rpoplpush('list', 'tmp')
- assert_equal %w(one two three), @r.lrange('tmp',0,-1)
+ unless @legacy
+ @r.rpush "list", 'one'
+ @r.rpush "list", 'two'
+ @r.rpush "list", 'three'
+ assert_equal "list", @r.type('list')
+ assert_equal 3, @r.llen('list')
+ assert_equal %w(one two three), @r.lrange('list',0,-1)
+ assert_equal [], @r.lrange('tmp',0,-1)
+ assert_equal "three", @r.rpoplpush('list', 'tmp')
+ assert_equal %w(three), @r.lrange('tmp',0,-1)
+ assert_equal "two", @r.rpoplpush('list', 'tmp')
+ assert_equal %w(two three), @r.lrange('tmp',0,-1)
+ assert_equal "one", @r.rpoplpush('list', 'tmp')
+ assert_equal %w(one two three), @r.lrange('tmp',0,-1)
+ end
end
should "be able add members to a set" do
@r.sadd "set", "key1"
@r.sadd "set", "key2"
@@ -308,61 +318,73 @@
assert_equal ["louie"], @r.sort("dogs", :get => "dog_*", :limit => [0,1])
assert_equal ["taj"], @r.sort("dogs", :get => "dog_*", :limit => [0,1], :order => "desc alpha")
end
should "be able add members to a zset ZADD" do
- @r.zadd 'zset', 1, 'set'
- assert_equal %w(set), @r.zrange('zset', 0, 1)
- assert_equal 1, @r.zcard('zset')
- @r.del('zset')
+ unless @legacy
+ @r.zadd 'zset', 1, 'set'
+ assert_equal %w(set), @r.zrange('zset', 0, 1)
+ assert_equal 1, @r.zcard('zset')
+ @r.del('zset')
+ end
end
should "be able count the members of a zset ZCARD" do
- @r.zadd 'zset', 1, 'foo'
- @r.zcard('zset')
- @r.del('zset')
+ unless @legacy
+ @r.zadd 'zset', 1, 'foo'
+ @r.zcard('zset')
+ @r.del('zset')
+ end
end
should "be able delete members of a zset ZREM" do
- @r.zadd 'zset', 1, 'set'
- assert_equal 1, @r.zcard('zset')
- @r.zadd 'zset', 2, 'set2'
- assert_equal 2, @r.zcard('zset')
- @r.zrem 'zset', 'set'
- assert_equal 1, @r.zcard('zset')
- @r.del('zset')
+ unless @legacy
+ @r.zadd 'zset', 1, 'set'
+ assert_equal 1, @r.zcard('zset')
+ @r.zadd 'zset', 2, 'set2'
+ assert_equal 2, @r.zcard('zset')
+ @r.zrem 'zset', 'set'
+ assert_equal 1, @r.zcard('zset')
+ @r.del('zset')
+ end
end
should "be able to get a range of values from a zset ZRANGE" do
- @r.zadd 'zset', 1, 'set'
- @r.zadd 'zset', 2, 'set2'
- @r.zadd 'zset', 3, 'set3'
- assert_equal 3, @r.zcard('zset')
- assert_equal %w(set set2 set3), @r.zrange('zset', 0, 3)
- @r.del('set')
- @r.del('set2')
- @r.del('set3')
- @r.del('zset')
+ unless @legacy
+ @r.zadd 'zset', 1, 'set'
+ @r.zadd 'zset', 2, 'set2'
+ @r.zadd 'zset', 3, 'set3'
+ assert_equal 3, @r.zcard('zset')
+ assert_equal %w(set set2 set3), @r.zrange('zset', 0, 3)
+ @r.del('set')
+ @r.del('set2')
+ @r.del('set3')
+ @r.del('zset')
+ end
end
should "be able to get a reverse range of values from a zset ZREVRANGE" do
- @r.zadd 'zset', 1, 'set'
- @r.zadd 'zset', 2, 'set2'
- @r.zadd 'zset', 3, 'set3'
- assert_equal 3, @r.zcard('zset')
- assert_equal %w(set3 set2 set), @r.zrevrange('zset', 0, 3)
- @r.del('zset')
+ unless @legacy
+ @r.zadd 'zset', 1, 'set'
+ @r.zadd 'zset', 2, 'set2'
+ @r.zadd 'zset', 3, 'set3'
+ assert_equal 3, @r.zcard('zset')
+ assert_equal %w(set3 set2 set), @r.zrevrange('zset', 0, 3)
+ @r.del('zset')
+ end
end
should "be able to get a range by score of values from a zset ZRANGEBYSCORE" do
- @r.zadd 'zset', 1, 'set'
- @r.zadd 'zset', 2, 'set2'
- @r.zadd 'zset', 3, 'set3'
- @r.zadd 'zset', 4, 'set4'
- assert_equal 4, @r.zcard('zset')
- assert_equal %w(set2 set3), @r.zrangebyscore('zset', 2, 3)
- @r.del('zset')
+ unless @legacy
+ @r.zadd 'zset', 1, 'set'
+ @r.zadd 'zset', 2, 'set2'
+ @r.zadd 'zset', 3, 'set3'
+ @r.zadd 'zset', 4, 'set4'
+ assert_equal 4, @r.zcard('zset')
+ assert_equal %w(set2 set3), @r.zrangebyscore('zset', 2, 3)
+ @r.del('zset')
+ end
end
should "provide info" do
[:last_save_time, :redis_version, :total_connections_received, :connected_clients, :total_commands_processed, :connected_slaves, :uptime_in_seconds, :used_memory, :uptime_in_days, :changes_since_last_save].each do |x|
assert @r.info.keys.include?(x)