$r get novar2
} {foobared}
+ test {SETNX will overwrite EXPIREing key} {
+ $r set x 10
+ $r expire x 10000
+ $r setnx x 20
+ $r get x
+ } {20}
+
test {EXISTS} {
set res {}
$r set newkey test
list [$r msetnx x1 xxx y2 yyy] [$r get x1] [$r get y2]
} {1 xxx yyy}
+ test {MSETNX should remove all the volatile keys even on failure} {
+ $r mset x 1 y 2 z 3
+ $r expire y 10000
+ $r expire z 10000
+ list [$r msetnx x A y B z C] [$r mget x y z]
+ } {0 {1 {} {}}}
+
test {ZSET basic ZADD and score update} {
$r zadd ztmp 10 x
$r zadd ztmp 20 y
[$r zrangebyscore zset 0 10 LIMIT 20 10]
} {{a b} {c d e} {c d e} {}}
+ test {ZREMRANGE basics} {
+ $r del zset
+ $r zadd zset 1 a
+ $r zadd zset 2 b
+ $r zadd zset 3 c
+ $r zadd zset 4 d
+ $r zadd zset 5 e
+ list [$r zremrangebyscore zset 2 4] [$r zrange zset 0 -1]
+ } {3 {a e}}
+
+ test {ZREMRANGE from -inf to +inf} {
+ $r del zset
+ $r zadd zset 1 a
+ $r zadd zset 2 b
+ $r zadd zset 3 c
+ $r zadd zset 4 d
+ $r zadd zset 5 e
+ list [$r zremrangebyscore zset -inf +inf] [$r zrange zset 0 -1]
+ } {5 {}}
+
test {SORT against sorted sets} {
$r del zset
$r zadd zset 1 a