mirror of https://github.com/F-Stack/f-stack.git
45 lines
1.5 KiB
Tcl
45 lines
1.5 KiB
Tcl
set testmodule [file normalize tests/modules/getkeys.so]
|
|
|
|
start_server {tags {"modules"}} {
|
|
r module load $testmodule
|
|
|
|
test {COMMAND INFO correctly reports a movable keys module command} {
|
|
set info [lindex [r command info getkeys.command] 0]
|
|
|
|
assert_equal {movablekeys} [lindex $info 2]
|
|
assert_equal {0} [lindex $info 3]
|
|
assert_equal {0} [lindex $info 4]
|
|
assert_equal {0} [lindex $info 5]
|
|
}
|
|
|
|
test {COMMAND GETKEYS correctly reports a movable keys module command} {
|
|
r command getkeys getkeys.command arg1 arg2 key key1 arg3 key key2 key key3
|
|
} {key1 key2 key3}
|
|
|
|
test {RM_GetCommandKeys on non-existing command} {
|
|
catch {r getkeys.introspect non-command key1 key2} e
|
|
set _ $e
|
|
} {*ENOENT*}
|
|
|
|
test {RM_GetCommandKeys on built-in fixed keys command} {
|
|
r getkeys.introspect set key1 value1
|
|
} {key1}
|
|
|
|
test {RM_GetCommandKeys on EVAL} {
|
|
r getkeys.introspect eval "" 4 key1 key2 key3 key4 arg1 arg2
|
|
} {key1 key2 key3 key4}
|
|
|
|
test {RM_GetCommandKeys on a movable keys module command} {
|
|
r getkeys.introspect getkeys.command arg1 arg2 key key1 arg3 key key2 key key3
|
|
} {key1 key2 key3}
|
|
|
|
test {RM_GetCommandKeys on a non-movable module command} {
|
|
r getkeys.introspect getkeys.fixed arg1 key1 key2 key3 arg2
|
|
} {key1 key2 key3}
|
|
|
|
test {RM_GetCommandKeys with bad arity} {
|
|
catch {r getkeys.introspect set key} e
|
|
set _ $e
|
|
} {*EINVAL*}
|
|
}
|