]>
Commit | Line | Data |
---|---|---|
08f55b78 | 1 | start_server {tags {"protocol"}} { |
98578b57 PN |
2 | test {Handle an empty query well} { |
3 | set fd [r channel] | |
4 | puts -nonewline $fd "\r\n" | |
5 | flush $fd | |
6 | r ping | |
7 | } {PONG} | |
8 | ||
9 | test {Negative multi bulk command does not create problems} { | |
10 | set fd [r channel] | |
11 | puts -nonewline $fd "*-10\r\n" | |
12 | flush $fd | |
13 | r ping | |
14 | } {PONG} | |
15 | ||
16 | test {Negative multi bulk payload} { | |
17 | set fd [r channel] | |
18 | puts -nonewline $fd "SET x -10\r\n" | |
19 | flush $fd | |
20 | gets $fd | |
21 | } {*invalid bulk*} | |
22 | ||
23 | test {Too big bulk payload} { | |
24 | set fd [r channel] | |
25 | puts -nonewline $fd "SET x 2000000000\r\n" | |
26 | flush $fd | |
27 | gets $fd | |
28 | } {*invalid bulk*count*} | |
29 | ||
01daeece | 30 | test {bulk payload is not a number} { |
31 | set fd [r channel] | |
32 | puts -nonewline $fd "SET x blabla\r\n" | |
33 | flush $fd | |
34 | gets $fd | |
35 | } {*invalid bulk*count*} | |
36 | ||
98578b57 PN |
37 | test {Multi bulk request not followed by bulk args} { |
38 | set fd [r channel] | |
39 | puts -nonewline $fd "*1\r\nfoo\r\n" | |
40 | flush $fd | |
41 | gets $fd | |
42 | } {*protocol error*} | |
43 | ||
44 | test {Generic wrong number of args} { | |
45 | catch {r ping x y z} err | |
46 | set _ $err | |
47 | } {*wrong*arguments*ping*} | |
48 | } |