From 5cbe276ef1e797aef77e7401593f4a7827c37fe3 Mon Sep 17 00:00:00 2001 From: Eric Wong Date: Thu, 27 Jan 2011 12:52:15 -0800 Subject: test for client_max_body_size being zero Some users never, ever accept uploads, so we should test for it. --- t/t0107-rack-input-limit-zero.sh | 58 ++++++++++++++++++++++++++++++++++++++++ 1 file changed, 58 insertions(+) create mode 100755 t/t0107-rack-input-limit-zero.sh diff --git a/t/t0107-rack-input-limit-zero.sh b/t/t0107-rack-input-limit-zero.sh new file mode 100755 index 0000000..eb947ba --- /dev/null +++ b/t/t0107-rack-input-limit-zero.sh @@ -0,0 +1,58 @@ +#!/bin/sh +. ./test-lib.sh +req_curl_chunked_upload_err_check + +t_plan 6 "rack.input client_max_body_size zero" + +t_begin "setup and startup" && { + rtmpfiles curl_out curl_err cmbs_config + rainbows_setup $model + sed -e 's/client_max_body_size.*/client_max_body_size 0/' \ + < $unicorn_config > $cmbs_config + rainbows -D sha1-random-size.ru -c $cmbs_config + rainbows_wait_start + empty_sha1=da39a3ee5e6b4b0d3255bfef95601890afd80709 +} + +t_begin "regular request" && { + curl -vsSf -H Expect: http://$listen/ > $curl_out 2> $curl_err + dbgcat curl_err + dbgcat curl_out + test x"$(cat $curl_out)" = x$empty_sha1 +} + +t_begin "chunked request" && { + curl -vsSf -T- < /dev/null -H Expect: \ + http://$listen/ > $curl_out 2> $curl_err + dbgcat curl_err + dbgcat curl_out + test x"$(cat $curl_out)" = x$empty_sha1 +} + +t_begin "small input chunked" && { + rm -f $ok + echo | \ + curl -vsSf -T- -H Expect: \ + http://$listen/ > $curl_out 2> $curl_err || > $ok + dbgcat curl_err + dbgcat curl_out + fgrep 413 $curl_err + test -e $ok +} + +t_begin "small input content-length" && { + rm -f $ok + echo > $tmp + curl -vsSf -T $tmp -H Expect: \ + http://$listen/ > $curl_out 2> $curl_err || > $ok + fgrep 413 $curl_err + dbgcat curl_err + dbgcat curl_out + test -e $ok +} + +t_begin "shutdown" && { + kill $rainbows_pid +} + +t_done -- cgit v1.2.3-24-ge0c7