X-Git-Url: https://git.saurik.com/redis.git/blobdiff_plain/25fd2cb284ac12447059aa0e8ec87db9fb75f79d..6766f45ef27af7f028dd71b5b1482365995bf314:/test-redis.tcl?ds=inline diff --git a/test-redis.tcl b/test-redis.tcl index dacd6e5f..14a1256e 100644 --- a/test-redis.tcl +++ b/test-redis.tcl @@ -280,6 +280,27 @@ proc main {server port} { $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} { @@ -294,11 +315,11 @@ proc main {server port} { } } set _ $err - } {49995000} + } {} - test {DBSIZE should be 10001 now} { + test {DBSIZE should be 10101 now} { $r dbsize - } {10001} + } {10101} test {INCR against non existing key} { set res {} @@ -1579,6 +1600,29 @@ proc main {server port} { list $v1 $v2 $v3 } {QUEUED QUEUED {{a b c} PONG}} + test {APPEND basics} { + list [$r append foo bar] [$r get foo] \ + [$r append foo 100] [$r get foo] + } {3 bar 6 bar100} + + test {APPEND fuzzing} { + set err {} + foreach type {binary alpha compr} { + set buf {} + $r del x + for {set i 0} {$i < 1000} {incr i} { + set bin [randstring 0 10 $type] + append buf $bin + $r append x $bin + } + if {$buf != [$r get x]} { + set err "Expected '$buf' found '[$r get x]'" + break + } + } + set _ $err + } {} + # Leave the user with a clean DB before to exit test {FLUSHDB} { set aux {}