2 # Copyright (c) 2009 Rainbows! hackers
3 # Copyright (c) 2010 Unicorn hackers
8 # sometimes we rely on http_proxy to avoid wasting bandwidth with Isolate
9 # and multiple Ruby versions
10 NO_PROXY
=${UNICORN_TEST_ADDR-127.0.0.1}
15 RUBY_VERSION
=${RUBY_VERSION-$($RUBY -e 'puts RUBY_VERSION')}
16 RUBY_ENGINE
=${RUBY_ENGINE-$($RUBY -e 'puts((RUBY_ENGINE rescue "ruby"))')}
17 t_pfx
=$PWD/trash
/$T-$RUBY_ENGINE-$RUBY_VERSION
23 test -x $PWD/bin
/unused_listen || die
"must be run in 't' directory"
28 while ! test -s "$path" && test $nr -gt 0
35 # given a list of variable names, create temporary files and assign
36 # the pathnames to those variables
48 T_RM_LIST
="$T_RM_LIST $_tmp"
51 _tmp
="$(mktemp -t $id.$$.XXXXXXXX)"
52 if test $
(printf "$_tmp" |
wc -c) -gt 108
54 echo >&2 "$_tmp too long, tests may fail"
55 echo >&2 "Try to set TMPDIR to a shorter path"
59 T_RM_LIST
="$T_RM_LIST $_tmp"
65 T_OK_RM_LIST
="$T_OK_RM_LIST $_tmp"
75 sed -e "s/^/$id:/" < $_file
82 if grep -v $T $_r_err |
grep -i Error
84 die
"Errors found in $_r_err"
85 elif grep SIGKILL
$_r_err
87 die
"SIGKILL found in $_r_err"
94 port
=$
(expr $listen : '[^:]*:\([0-9]\+\)')
95 host=$
(expr $listen : '\([^:]*\):[0-9]\+')
97 rtmpfiles unicorn_config pid r_err r_out fifo tmp ok
98 cat > $unicorn_config <<EOF
106 unicorn_wait_start
() {
107 # no need to play tricks with FIFOs since we got "ready_pipe" now
108 unicorn_pid
=$
(cat $pid)