]> git.saurik.com Git - redis.git/commitdiff
APPEND tests
authorantirez <antirez@gmail.com>
Thu, 4 Feb 2010 15:38:33 +0000 (16:38 +0100)
committerantirez <antirez@gmail.com>
Thu, 4 Feb 2010 15:38:33 +0000 (16:38 +0100)
redis.tcl
test-redis.tcl

index d52957ad42b2fc0e4f6da7e5c1dff6f514ffd251..640a0ae960933cff51c1a4e8f377f877e63398b4 100644 (file)
--- a/redis.tcl
+++ b/redis.tcl
@@ -20,7 +20,7 @@ array set ::redis::multibulkarg {}
 
 # Flag commands requiring last argument as a bulk write operation
 foreach redis_bulk_cmd {
-    set setnx rpush lpush lset lrem sadd srem sismember echo getset smove zadd zrem zscore zincrby
+    set setnx rpush lpush lset lrem sadd srem sismember echo getset smove zadd zrem zscore zincrby append
 } {
     set ::redis::bulkarg($redis_bulk_cmd) {}
 }
index c0a025af2aecde808a002a6d54f8b4eeb33a3801..14a1256e0ff8380bd161d99720cd0cd2349ee93d 100644 (file)
@@ -1600,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 {}