summaryrefslogtreecommitdiff
path: root/tests/support
diff options
context:
space:
mode:
authorPieter Noordhuis <pcnoordhuis@gmail.com>2010-10-15 15:50:29 +0200
committerPieter Noordhuis <pcnoordhuis@gmail.com>2010-10-15 15:50:29 +0200
commit00cf82c0bd9e0272a06f086b00a70d5d5d0f5e31 (patch)
tree0ac67551fb279d6e54297c240c9c6cc4cc327fc4 /tests/support
parentcd8788f26d06d8643828024537b8abe2b702759f (diff)
downloadredis-00cf82c0bd9e0272a06f086b00a70d5d5d0f5e31.tar.gz
Change tcl client to only use the multibulk protocol
Diffstat (limited to 'tests/support')
-rw-r--r--tests/support/redis.tcl44
1 files changed, 7 insertions, 37 deletions
diff --git a/tests/support/redis.tcl b/tests/support/redis.tcl
index 98cf86f09..4f8ac485d 100644
--- a/tests/support/redis.tcl
+++ b/tests/support/redis.tcl
@@ -36,25 +36,6 @@ array set ::redis::deferred {}
array set ::redis::callback {}
array set ::redis::state {} ;# State in non-blocking reply reading
array set ::redis::statestack {} ;# Stack of states, for nested mbulks
-array set ::redis::bulkarg {}
-array set ::redis::multibulkarg {}
-
-# Flag commands requiring last argument as a bulk write operation
-foreach redis_bulk_cmd {
- set setnx rpush lpush rpushx lpushx linsert lset lrem sadd srem sismember echo getset smove zadd zrem zscore zincrby append zrank zrevrank hget hdel hexists setex publish
-} {
- set ::redis::bulkarg($redis_bulk_cmd) {}
-}
-
-# Flag commands requiring last argument as a bulk write operation
-foreach redis_multibulk_cmd {
- mset msetnx hset hsetnx hmset hmget
-} {
- set ::redis::multibulkarg($redis_multibulk_cmd) {}
-}
-
-unset redis_bulk_cmd
-unset redis_multibulk_cmd
proc redis {{server 127.0.0.1} {port 6379} {defer 0}} {
set fd [socket $server $port]
@@ -79,25 +60,14 @@ proc ::redis::__dispatch__ {id method args} {
set args [lrange $args 0 end-1]
}
if {[info command ::redis::__method__$method] eq {}} {
- if {[info exists ::redis::bulkarg($method)]} {
- set cmd "$method "
- append cmd [join [lrange $args 0 end-1]]
- append cmd " [string length [lindex $args end]]\r\n"
- append cmd [lindex $args end]
- ::redis::redis_writenl $fd $cmd
- } elseif {[info exists ::redis::multibulkarg($method)]} {
- set cmd "*[expr {[llength $args]+1}]\r\n"
- append cmd "$[string length $method]\r\n$method\r\n"
- foreach a $args {
- append cmd "$[string length $a]\r\n$a\r\n"
- }
- ::redis::redis_write $fd $cmd
- flush $fd
- } else {
- set cmd "$method "
- append cmd [join $args]
- ::redis::redis_writenl $fd $cmd
+ set cmd "*[expr {[llength $args]+1}]\r\n"
+ append cmd "$[string length $method]\r\n$method\r\n"
+ foreach a $args {
+ append cmd "$[string length $a]\r\n$a\r\n"
}
+ ::redis::redis_write $fd $cmd
+ flush $fd
+
if {!$deferred} {
if {$blocking} {
::redis::redis_read_reply $fd