mirror of
https://github.com/fluencelabs/redis
synced 2025-06-22 13:31:32 +00:00
Add SCAN command
This commit is contained in:
committed by
antirez
parent
9546f7846b
commit
0dd95e23ab
@ -754,4 +754,65 @@ start_server {tags {"basic"}} {
|
||||
set ttl [r ttl foo]
|
||||
assert {$ttl <= 10 && $ttl > 5}
|
||||
}
|
||||
|
||||
test {KEYS * two times with long key, Github issue #1208} {
|
||||
r flushdb
|
||||
r set dlskeriewrioeuwqoirueioqwrueoqwrueqw test
|
||||
r keys *
|
||||
r keys *
|
||||
} {dlskeriewrioeuwqoirueioqwrueoqwrueqw}
|
||||
|
||||
test "SCAN basic" {
|
||||
r flushdb
|
||||
r debug populate 1000
|
||||
|
||||
set cur 0
|
||||
set keys {}
|
||||
while 1 {
|
||||
set res [r scan $cur]
|
||||
set cur [lindex $res 0]
|
||||
set k [lindex $res 1]
|
||||
lappend keys $k
|
||||
if {$cur == 0} break
|
||||
}
|
||||
|
||||
set keys [lsort -unique [concat {*}$keys]]
|
||||
assert_equal 1000 [llength $keys]
|
||||
}
|
||||
|
||||
test "SCAN COUNT" {
|
||||
r flushdb
|
||||
r debug populate 1000
|
||||
|
||||
set cur 0
|
||||
set keys {}
|
||||
while 1 {
|
||||
set res [r scan $cur count 5]
|
||||
set cur [lindex $res 0]
|
||||
set k [lindex $res 1]
|
||||
lappend keys $k
|
||||
if {$cur == 0} break
|
||||
}
|
||||
|
||||
set keys [lsort -unique [concat {*}$keys]]
|
||||
assert_equal 1000 [llength $keys]
|
||||
}
|
||||
|
||||
test "SCAN PATTERN" {
|
||||
r flushdb
|
||||
r debug populate 1000
|
||||
|
||||
set cur 0
|
||||
set keys {}
|
||||
while 1 {
|
||||
set res [r scan $cur pattern "key:1??"]
|
||||
set cur [lindex $res 0]
|
||||
set k [lindex $res 1]
|
||||
lappend keys $k
|
||||
if {$cur == 0} break
|
||||
}
|
||||
|
||||
set keys [lsort -unique [concat {*}$keys]]
|
||||
assert_equal 100 [llength $keys]
|
||||
}
|
||||
}
|
||||
|
Reference in New Issue
Block a user