$r get foo
} [string repeat "abcd" 1000000]
+ test {Very big payload random access} {
+ set err {}
+ array set payload {}
+ for {set j 0} {$j < 100} {incr j} {
+ set size [expr 1+[randomInt 100000]]
+ set buf [string repeat "pl-$j" $size]
+ set payload($j) $buf
+ $r set bigpayload_$j $buf
+ }
+ for {set j 0} {$j < 1000} {incr j} {
+ set index [randomInt 100]
+ set buf [$r get bigpayload_$index]
+ if {$buf != $payload($index)} {
+ set err "Values differ: I set '$payload($index)' but I read back '$buf'"
+ break
+ }
+ }
+ unset payload
+ set _ $err
+ } {}
+
test {SET 10000 numeric keys and access all them in reverse order} {
+ set err {}
for {set x 0} {$x < 10000} {incr x} {
$r set $x $x
}
set sum 0
for {set x 9999} {$x >= 0} {incr x -1} {
- incr sum [$r get $x]
+ set val [$r get $x]
+ if {$val ne $x} {
+ set err "Eleemnt at position $x is $val instead of $x"
+ break
+ }
}
- format $sum
- } {49995000}
+ set _ $err
+ } {}
- test {DBSIZE should be 10001 now} {
+ test {DBSIZE should be 10101 now} {
$r dbsize
- } {10001}
+ } {10101}
test {INCR against non existing key} {
set res {}
[$r zrange ztmp 1 -1] [$r zrevrange ztmp 1 -1]
} {{y x z} {z x y} {x z} {x y}}
+ test {ZRANGE WITHSCORES} {
+ $r zrange ztmp 0 -1 withscores
+ } {y 1 x 10 z 30}
+
test {ZSETs stress tester - sorting is working well?} {
set delta 0
for {set test 0} {$test < 2} {incr test} {
set _ 1
} {1}
+ test {MUTLI / EXEC basics} {
+ $r del mylist
+ $r rpush mylist a
+ $r rpush mylist b
+ $r rpush mylist c
+ $r multi
+ set v1 [$r lrange mylist 0 -1]
+ set v2 [$r ping]
+ set v3 [$r exec]
+ list $v1 $v2 $v3
+ } {QUEUED QUEUED {{a b c} PONG}}
+
# Leave the user with a clean DB before to exit
test {FLUSHDB} {
set aux {}