3 skip_models StreamResponseEpoll
5 t_plan
9 "graceful handling of broken apps for $model"
7 t_begin
"setup and start" && {
8 rainbows_setup
$model 1
9 rainbows
-E none
-D t0009.ru
-c $unicorn_config
13 t_begin
"normal response is alright" && {
14 test xOK
= x
"$(curl -sSf http://$listen/)"
17 t_begin
"app raised exception" && {
18 curl
-sSf http
://$listen/raise
2> $tmp ||
:
23 t_begin
"app exception logged and backtrace not swallowed" && {
24 grep -F 'app error' $r_err
25 grep -A1 -F 'app error' $r_err |
tail -1 |
grep t0009.ru
:
30 t_begin
"trigger bad response" && {
31 curl
-sSf http
://$listen/nil
2> $tmp ||
:
36 t_begin
"app exception logged" && {
37 grep -F 'app error' $r_err
41 t_begin
"normal responses alright afterwards" && {
43 curl
-sSf http
://$listen/ >> $tmp &
44 curl
-sSf http
://$listen/ >> $tmp &
45 curl
-sSf http
://$listen/ >> $tmp &
46 curl
-sSf http
://$listen/ >> $tmp &
48 test xOK
= x$
(sort < $tmp |
uniq)
51 t_begin
"teardown" && {
55 t_begin
"check stderr" && check_stderr