From e65542f87b376b5e5b3d5f34fd43e9a8b2dfaff2 Mon Sep 17 00:00:00 2001 From: Eric Wong Date: Thu, 8 Oct 2009 23:24:19 -0700 Subject: tests: add revactor pipelining/keepalive test Revactor model uses a different process_client method than our Thread* models. --- t/t3001-revactor-pipeline.sh | 43 +++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 43 insertions(+) create mode 100755 t/t3001-revactor-pipeline.sh (limited to 't') diff --git a/t/t3001-revactor-pipeline.sh b/t/t3001-revactor-pipeline.sh new file mode 100755 index 0000000..94f1eb3 --- /dev/null +++ b/t/t3001-revactor-pipeline.sh @@ -0,0 +1,43 @@ +#!/bin/sh +. ./test-lib.sh +require_revactor + +eval $(unused_listen) +rtmpfiles unicorn_config curl_out curl_err pid fifo tmp ok + +rm -f $fifo +mkfifo $fifo + +cat > $unicorn_config < $tmp 2>&1 +grep 'Re-using existing connection' < $tmp + +echo "pipelining partial requests" +req='GET / HTTP/1.1\r\nHost: foo\r\n' +( + printf "$req"'\r\n'"$req" + cat $fifo > $tmp & + sleep 1 + printf 'Connection: close\r\n\r\n' + echo ok > $ok +) | socat - TCP:$listen > $fifo + +kill $(cat $pid) + +dbgcat tmp +test 2 -eq $(grep '^HTTP/1.1' $tmp | wc -l) +test 2 -eq $(grep '^HTTP/1.1 200 OK' $tmp | wc -l) +test 1 -eq $(grep '^Connection: keep-alive' $tmp | wc -l) +test 1 -eq $(grep '^Connection: close' $tmp | wc -l) +test x"$(cat $ok)" = xok -- cgit v1.2.3-24-ge0c7