X-Git-Url: https://git.saurik.com/redis.git/blobdiff_plain/ced6709cb9f4db367c58035f1ccb4a3ddd9c21cf..ef11bccccac22a001e2d0a6f440dddf69c401954:/tests/unit/sort.tcl diff --git a/tests/unit/sort.tcl b/tests/unit/sort.tcl index 8f2710cd..41558522 100644 --- a/tests/unit/sort.tcl +++ b/tests/unit/sort.tcl @@ -3,6 +3,7 @@ start_server { overrides { "list-max-ziplist-value" 16 "list-max-ziplist-entries" 32 + "set-max-intset-entries" 32 } } { proc create_random_dataset {num cmd} { @@ -36,17 +37,21 @@ start_server { foreach {num cmd enc title} { 16 lpush ziplist "Ziplist" - 64 lpush linkedlist "Linked list" + 1000 lpush linkedlist "Linked list" + 10000 lpush linkedlist "Big Linked list" + 16 sadd intset "Intset" + 1000 sadd hashtable "Hash table" + 10000 sadd hashtable "Big Hash table" } { set result [create_random_dataset $num $cmd] assert_encoding $enc tosort test "$title: SORT BY key" { - assert_equal $result [r sort tosort {BY weight_*}] + assert_equal $result [r sort tosort BY weight_*] } test "$title: SORT BY hash field" { - assert_equal $result [r sort tosort {BY wobj_*->weight}] + assert_equal $result [r sort tosort BY wobj_*->weight] } } @@ -73,21 +78,21 @@ start_server { } test "SORT BY key STORE" { - r sort tosort {BY weight_*} store sort-res + r sort tosort BY weight_* store sort-res assert_equal $result [r lrange sort-res 0 -1] assert_equal 16 [r llen sort-res] assert_encoding ziplist sort-res } test "SORT BY hash field STORE" { - r sort tosort {BY wobj_*->weight} store sort-res + r sort tosort BY wobj_*->weight store sort-res assert_equal $result [r lrange sort-res 0 -1] assert_equal 16 [r llen sort-res] assert_encoding ziplist sort-res } test "SORT DESC" { - assert_equal [lsort -decreasing -integer $result] [r sort tosort {DESC}] + assert_equal [lsort -decreasing -integer $result] [r sort tosort DESC] } test "SORT ALPHA against integer encoded strings" { @@ -136,7 +141,7 @@ start_server { test "SORT speed, $num element list BY key, 100 times" { set start [clock clicks -milliseconds] for {set i 0} {$i < 100} {incr i} { - set sorted [r sort tosort {BY weight_* LIMIT 0 10}] + set sorted [r sort tosort BY weight_* LIMIT 0 10] } set elapsed [expr [clock clicks -milliseconds]-$start] puts -nonewline "\n Average time to sort: [expr double($elapsed)/100] milliseconds " @@ -146,7 +151,7 @@ start_server { test "SORT speed, $num element list BY hash field, 100 times" { 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 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 " @@ -156,7 +161,7 @@ start_server { test "SORT speed, $num element list directly, 100 times" { set start [clock clicks -milliseconds] for {set i 0} {$i < 100} {incr i} { - set sorted [r sort tosort {LIMIT 0 10}] + set sorted [r sort tosort LIMIT 0 10] } set elapsed [expr [clock clicks -milliseconds]-$start] puts -nonewline "\n Average time to sort: [expr double($elapsed)/100] milliseconds " @@ -166,7 +171,7 @@ start_server { test "SORT speed, $num element list BY , 100 times" { set start [clock clicks -milliseconds] for {set i 0} {$i < 100} {incr i} { - set sorted [r sort tosort {BY nokey LIMIT 0 10}] + set sorted [r sort tosort BY nokey LIMIT 0 10] } set elapsed [expr [clock clicks -milliseconds]-$start] puts -nonewline "\n Average time to sort: [expr double($elapsed)/100] milliseconds "