Rev: fix error handling for parser errors
[rainbows.git] / t / t4003-rev-parser-error.sh
blobdff3e33fe72af89ee9a2b496e331b08488b17a8d
1 #!/bin/sh
2 . ./test-lib.sh
3 require_rev
5 eval $(unused_listen)
6 rtmpfiles unicorn_config pid r_err r_out tmp fifo ok
7 rm -f $fifo
8 mkfifo $fifo
10 cat > $unicorn_config <<EOF
11 listen "$listen"
12 pid "$pid"
13 stderr_path "$r_err"
14 stdout_path "$r_out"
15 Rainbows! do
16 use :Rev
17 end
18 EOF
20 rainbows -D t4000.ru -c $unicorn_config
21 wait_for_pid $pid
24 printf 'GET / HTTP/1/1\r\nHost: example.com\r\n\r\n'
25 cat $fifo > $tmp &
26 wait
27 echo ok > $ok
28 ) | socat - TCP:$listen > $fifo
30 kill $(cat $pid)
32 dbgcat tmp
33 grep -F 'HTTP/1.1 400 Bad Request' $tmp
34 ! grep Error $r_err