Sha256: a11a7fa52c0ae3c7ea7d46f2d78817640e0b50f5213dcdcdd2b0fbb82c14d9a2

Contents?: true

Size: 1.12 KB

Versions: 22

Compression:

Stored size: 1.12 KB

Contents

#!/bin/sh
. ./test-lib.sh
skip_models StreamResponseEpoll

t_plan 9 "graceful handling of broken apps for $model"

t_begin "setup and start" && {
	rainbows_setup $model 1
	rainbows -E none -D t0009.ru -c $unicorn_config
	rainbows_wait_start
}

t_begin "normal response is alright" && {
	test xOK = x"$(curl -sSf http://$listen/)"
}

t_begin "app raised exception" && {
	curl -sSf http://$listen/raise 2> $tmp || :
	grep -F 500 $tmp
	> $tmp
}

t_begin "app exception logged and backtrace not swallowed" && {
	grep -F 'app error' $r_err
	grep -A1 -F 'app error' $r_err | tail -1 | grep t0009.ru:
	dbgcat r_err
	> $r_err
}

t_begin "trigger bad response" && {
	curl -sSf http://$listen/nil 2> $tmp || :
	grep -F 500 $tmp
	> $tmp
}

t_begin "app exception logged" && {
	grep -F 'app error' $r_err
	> $r_err
}

t_begin "normal responses alright afterwards" && {
	> $tmp
	curl -sSf http://$listen/ >> $tmp &
	curl -sSf http://$listen/ >> $tmp &
	curl -sSf http://$listen/ >> $tmp &
	curl -sSf http://$listen/ >> $tmp &
	wait
	test xOK = x$(sort < $tmp | uniq)
}

t_begin "teardown" && {
	kill $rainbows_pid
}

t_begin "check stderr" && check_stderr

t_done

Version data entries

22 entries across 22 versions & 1 rubygems

Version Path
rainbows-5.2.1 t/t0009-broken-app.sh
rainbows-5.2.0 t/t0009-broken-app.sh
rainbows-5.1.1 t/t0009-broken-app.sh
rainbows-5.1.0 t/t0009-broken-app.sh
rainbows-5.0.0.5.ge717 t/t0009-broken-app.sh
rainbows-5.0.0 t/t0009-broken-app.sh
rainbows-4.7.0 t/t0009-broken-app.sh
rainbows-4.6.2 t/t0009-broken-app.sh
rainbows-4.6.1 t/t0009-broken-app.sh
rainbows-4.6.0.4.g4108 t/t0009-broken-app.sh
rainbows-4.6.0 t/t0009-broken-app.sh
rainbows-4.5.0 t/t0009-broken-app.sh
rainbows-4.4.3 t/t0009-broken-app.sh
rainbows-4.4.2 t/t0009-broken-app.sh
rainbows-4.4.1.1.gd5c8c t/t0009-broken-app.sh
rainbows-4.4.1 t/t0009-broken-app.sh
rainbows-4.4.0 t/t0009-broken-app.sh
rainbows-4.3.1 t/t0009-broken-app.sh
rainbows-4.3.0 t/t0009-broken-app.sh
rainbows-4.2.0 t/t0009-broken-app.sh