From: antirez Date: Fri, 16 Apr 2010 14:23:10 +0000 (+0200) Subject: Added tests for GET/BY against hashes fields X-Git-Url: https://git.saurik.com/redis.git/commitdiff_plain/c4e83132313c3eaad0f0d6488566a746fddb76c4 Added tests for GET/BY against hashes fields --- diff --git a/test-redis.tcl b/test-redis.tcl index 800a93ea..22e19bab 100644 --- a/test-redis.tcl +++ b/test-redis.tcl @@ -953,6 +953,7 @@ proc main {} { $r lpush tosort $i $r sadd tosort-set $i $r set weight_$i $rint + $r hset wobj_$i weight $rint lappend tosort [list $i $rint] } set sorted [lsort -index 1 -real $tosort] @@ -967,15 +968,28 @@ proc main {} { $r sort tosort {BY weight_*} } $res - test {the same SORT with BY, but against the newly created set} { + test {SORT with BY (hash field) against the newly created list} { + $r sort tosort {BY wobj_*->weight} + } $res + + test {SORT with BY, but against the newly created set} { $r sort tosort-set {BY weight_*} } $res + test {SORT with BY (hash field), but against the newly created set} { + $r sort tosort-set {BY wobj_*->weight} + } $res + test {SORT with BY and STORE against the newly created list} { $r sort tosort {BY weight_*} store sort-res $r lrange sort-res 0 -1 } $res + test {SORT with BY (hash field) and STORE against the newly created list} { + $r sort tosort {BY wobj_*->weight} store sort-res + $r lrange sort-res 0 -1 + } $res + test {SORT direct, numeric, against the newly created list} { $r sort tosort } [lsort -integer $res] @@ -995,6 +1009,17 @@ proc main {} { format {} } {} + test {SORT speed, as above but against hash field} { + set start [clock clicks -milliseconds] + for {set i 0} {$i < 100} {incr i} { + set sorted [$r sort tosort {BY wobj_*->weight LIMIT 0 10}] + } + set elapsed [expr [clock clicks -milliseconds]-$start] + puts -nonewline "\n Average time to sort: [expr double($elapsed)/100] milliseconds " + flush stdout + format {} + } {} + test {SORT speed, sorting 10000 elements list directly, 100 times} { set start [clock clicks -milliseconds] for {set i 0} {$i < 100} {incr i} {