Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
别团等shy哥发育
redis
提交
dc11daf3
R
redis
项目概览
别团等shy哥发育
/
redis
与 Fork 源项目一致
从无法访问的项目Fork
通知
2
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
R
redis
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
体验新版 GitCode,发现更多精彩内容 >>
提交
dc11daf3
编写于
10月 15, 2010
作者:
P
Pieter Noordhuis
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
Change tests to use either the inline or the multibulk protocol
上级
5b12b47d
变更
4
隐藏空白更改
内联
并排
Showing
4 changed file
with
58 addition
and
51 deletion
+58
-51
tests/unit/basic.tcl
tests/unit/basic.tcl
+1
-1
tests/unit/other.tcl
tests/unit/other.tcl
+1
-1
tests/unit/protocol.tcl
tests/unit/protocol.tcl
+47
-40
tests/unit/sort.tcl
tests/unit/sort.tcl
+9
-9
未找到文件。
tests/unit/basic.tcl
浏览文件 @
dc11daf3
...
...
@@ -172,7 +172,7 @@ start_server {tags {"basic"}} {
test
{
Commands pipelining
}
{
set fd
[
r channel
]
puts -nonewline $fd
"SET k1
4
\r\n
xyzk
\r\n
GET k1
\r\n
PING
\r\n
"
puts -nonewline $fd
"SET k1 xyzk
\r\n
GET k1
\r\n
PING
\r\n
"
flush $fd
set res
{}
append res
[
string match OK*
[
::redis::redis_read_reply $fd
]]
...
...
tests/unit/other.tcl
浏览文件 @
dc11daf3
...
...
@@ -123,7 +123,7 @@ start_server {tags {"other"}} {
for
{
set i 0
}
{
$i
< 100000
}
{
incr i
}
{
set q
{}
set val
"0000
${i}
0000"
append q
"SET key:
$i
[
string length $val
]
\r\n
$val
\r\n
"
append q
"SET key:
$i
$val
\r\n
"
puts -nonewline $fd2 $q
set q
{}
append q
"GET key:
$i
\r\n
"
...
...
tests/unit/protocol.tcl
浏览文件 @
dc11daf3
start_server
{
tags
{
"protocol"
}}
{
test
{
Handle an empty query well
}
{
set fd
[
r channel
]
puts -nonewline $fd
"
\r\n
"
flush $fd
r ping
}
{
PONG
}
test
"Handle an empty query"
{
reconnect
r write
"
\r\n
"
r flush
assert_equal
"PONG"
[
r ping
]
}
test
{
Negative multi bulk command does not create problems
}
{
set fd
[
r channel
]
puts -nonewline $fd
"*-10
\r\n
"
flush $fd
r ping
}
{
PONG
}
test
"Negative multibulk length"
{
reconnect
r write
"*-10
\r\n
"
r flush
assert_equal PONG
[
r ping
]
}
test
{
Negative multi bulk payload
}
{
set fd
[
r channel
]
puts -nonewline $fd
"SET x -10
\r\n
"
flush $fd
gets $fd
}
{
*invalid bulk*
}
test
"Wrong multibulk payload header"
{
reconnect
r write
"*3
\r\n\$
3
\r\n
SET
\r\n\$
1
\r\n
x
\r\n
fooz
\r\n
"
r flush
assert_error
"*expected '
$
', got 'f'*"
{
r read
}
}
test
{
Too big bulk payload
}
{
set fd
[
r channel
]
puts -nonewline $fd
"SET x 200000000
0
\r\n
"
flush $fd
gets $fd
}
{
*invalid bulk*count*
}
test
"Negative multibulk payload length"
{
reconnect
r write
"*3
\r\n\$
3
\r\n
SET
\r\n\$
1
\r\n
x
\r\n\$
-1
0
\r\n
"
r flush
assert_error
"*invalid bulk length*"
{
r read
}
}
test
{
bulk payload is not a number
}
{
set fd
[
r channel
]
puts -nonewline $fd
"SET x blabla
\r\n
"
flush $fd
gets $fd
}
{
*invalid bulk*count*
}
test
"Out of range multibulk payload length"
{
reconnect
r write
"*3
\r\n\$
3
\r\n
SET
\r\n\$
1
\r\n
x
\r\n\$
2000000000
\r\n
"
r flush
assert_error
"*invalid bulk length*"
{
r read
}
}
test
{
Multi bulk request not followed by bulk args
}
{
set fd
[
r channel
]
puts -nonewline $fd
"*1
\r\n
foo
\r\n
"
flush $fd
gets $fd
}
{
*protocol error*
}
test
"Non-number multibulk payload length"
{
reconnect
r write
"*3
\r\n\$
3
\r\n
SET
\r\n\$
1
\r\n
x
\r\n\$
blabla
\r\n
"
r flush
assert_error
"*invalid bulk length*"
{
r read
}
}
test
{
Generic wrong number of args
}
{
catch
{
r ping x y z
}
err
set _ $err
}
{
*wrong*arguments*ping*
}
test
"Multi bulk request not followed by bulk arguments"
{
reconnect
r write
"*1
\r\n
foo
\r\n
"
r flush
assert_error
"*expected '
$
', got 'f'*"
{
r read
}
}
test
"Generic wrong number of args"
{
reconnect
assert_error
"*wrong*arguments*ping*"
{
r ping x y z
}
}
}
tests/unit/sort.tcl
浏览文件 @
dc11daf3
...
...
@@ -47,11 +47,11 @@ start_server {
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
]
}
}
...
...
@@ -78,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"
{
...
...
@@ -141,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 "
...
...
@@ -151,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 "
...
...
@@ -161,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 "
...
...
@@ -171,7 +171,7 @@ start_server {
test
"SORT speed,
$num
element list BY <const>, 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 "
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录