12345678910111213141516171819202122232425262728293031323334353637383940 |
- start_server {tags {"quit"}} {
- proc format_command {args} {
- set cmd "*[llength $args]\r\n"
- foreach a $args {
- append cmd "$[string length $a]\r\n$a\r\n"
- }
- set _ $cmd
- }
- test "QUIT returns OK" {
- reconnect
- assert_equal OK [r quit]
- assert_error * {r ping}
- }
- test "Pipelined commands after QUIT must not be executed" {
- reconnect
- r write [format_command quit]
- r write [format_command set foo bar]
- r flush
- assert_equal OK [r read]
- assert_error * {r read}
- reconnect
- assert_equal {} [r get foo]
- }
- test "Pipelined commands after QUIT that exceed read buffer size" {
- reconnect
- r write [format_command quit]
- r write [format_command set foo [string repeat "x" 1024]]
- r flush
- assert_equal OK [r read]
- assert_error * {r read}
- reconnect
- assert_equal {} [r get foo]
- }
- }
|