From e948380c2a28f12e7210130bc83fb0ae0e6fcac9 Mon Sep 17 00:00:00 2001 From: Eric Wong Date: Thu, 20 May 2010 14:22:08 -0700 Subject: tests: chunked client_body_max_size fails with old curl curl < 7.18.0 did not check for errors when doing chunked uploads. Unfortunately some distros are slow moving and bundle ancient versions of curl. --- t/t0103-rack-input-limit.sh | 1 + t/t0104-rack-input-limit-tiny.sh | 1 + t/t0105-rack-input-limit-bigger.sh | 2 ++ t/test-lib.sh | 15 +++++++++++++++ 4 files changed, 19 insertions(+) (limited to 't') diff --git a/t/t0103-rack-input-limit.sh b/t/t0103-rack-input-limit.sh index 38dbd4c..64d6dac 100755 --- a/t/t0103-rack-input-limit.sh +++ b/t/t0103-rack-input-limit.sh @@ -1,6 +1,7 @@ #!/bin/sh . ./test-lib.sh test -r random_blob || die "random_blob required, run with 'make $0'" +req_curl_chunked_upload_err_check t_plan 6 "rack.input client_max_body_size default" diff --git a/t/t0104-rack-input-limit-tiny.sh b/t/t0104-rack-input-limit-tiny.sh index e68bc53..0cf9f73 100755 --- a/t/t0104-rack-input-limit-tiny.sh +++ b/t/t0104-rack-input-limit-tiny.sh @@ -1,6 +1,7 @@ #!/bin/sh . ./test-lib.sh test -r random_blob || die "random_blob required, run with 'make $0'" +req_curl_chunked_upload_err_check t_plan 6 "rack.input client_max_body_size tiny" diff --git a/t/t0105-rack-input-limit-bigger.sh b/t/t0105-rack-input-limit-bigger.sh index 6b58291..95cadca 100755 --- a/t/t0105-rack-input-limit-bigger.sh +++ b/t/t0105-rack-input-limit-bigger.sh @@ -1,5 +1,7 @@ #!/bin/sh . ./test-lib.sh +test -r random_blob || die "random_blob required, run with 'make $0'" +req_curl_chunked_upload_err_check t_plan 10 "rack.input client_max_body_size bigger" diff --git a/t/test-lib.sh b/t/test-lib.sh index cdeff39..dc6eed7 100644 --- a/t/test-lib.sh +++ b/t/test-lib.sh @@ -162,6 +162,21 @@ rsha1 () { expr "$($_cmd)" : '\([a-f0-9]\{40\}\)' } +req_curl_chunked_upload_err_check () { + set +e + curl --version 2>/dev/null | awk '$1 == "curl" { + split($2, v, /\./) + if ((v[1] < 7) || (v[1] == 7 && v[2] < 18)) + code = 1 + } + END { exit(code) }' + if test $? -ne 0 + then + t_info "curl >= 7.18.0 required for $T" + exit 0 + fi +} + case $model in Rev) require_check rev Rev::VERSION ;; Revactor) require_check revactor Revactor::VERSION ;; -- cgit v1.2.3-24-ge0c7