From 6b750f5f952963009a2e6e8702fc8f3d8adc94ea Mon Sep 17 00:00:00 2001 From: Eric Wong Date: Wed, 8 Dec 2010 18:35:27 -0800 Subject: respect "rewindable_input false" in Unicorn config This was completely overlooked for the Rainbows 2.0.x releases. --- t/t0113-rewindable-input-false.sh | 26 ++++++++++++++++++++++++++ t/t0113.ru | 12 ++++++++++++ t/t0114-rewindable-input-true.sh | 26 ++++++++++++++++++++++++++ t/t0114.ru | 12 ++++++++++++ 4 files changed, 76 insertions(+) create mode 100755 t/t0113-rewindable-input-false.sh create mode 100644 t/t0113.ru create mode 100755 t/t0114-rewindable-input-true.sh create mode 100644 t/t0114.ru (limited to 't') diff --git a/t/t0113-rewindable-input-false.sh b/t/t0113-rewindable-input-false.sh new file mode 100755 index 0000000..c906106 --- /dev/null +++ b/t/t0113-rewindable-input-false.sh @@ -0,0 +1,26 @@ +#!/bin/sh +. ./test-lib.sh +skip_models EventMachine NeverBlock Rev RevThreadSpawn RevThreadPool + +t_plan 4 "rewindable_input toggled to false" + +t_begin "setup and start" && { + rainbows_setup + echo rewindable_input false >> $unicorn_config + rainbows -D -c $unicorn_config t0113.ru + rainbows_wait_start +} + +t_begin "ensure worker is started" && { + test xOK = x$(curl -T t0113.ru -H Expect: -vsSf http://$listen/) +} + +t_begin "killing succeeds" && { + kill $rainbows_pid +} + +t_begin "check stderr" && { + check_stderr +} + +t_done diff --git a/t/t0113.ru b/t/t0113.ru new file mode 100644 index 0000000..48a3a34 --- /dev/null +++ b/t/t0113.ru @@ -0,0 +1,12 @@ +#\ -E none +use Rack::ContentLength +use Rack::ContentType, 'text/plain' +app = lambda do |env| + case env['rack.input'] + when Unicorn::StreamInput + [ 200, {}, %w(OK) ] + else + [ 500, {}, %w(NO) ] + end +end +run app diff --git a/t/t0114-rewindable-input-true.sh b/t/t0114-rewindable-input-true.sh new file mode 100755 index 0000000..349449c --- /dev/null +++ b/t/t0114-rewindable-input-true.sh @@ -0,0 +1,26 @@ +#!/bin/sh +. ./test-lib.sh +skip_models EventMachine NeverBlock Rev RevThreadSpawn RevThreadPool + +t_plan 4 "rewindable_input toggled to true" + +t_begin "setup and start" && { + rainbows_setup + echo rewindable_input true >> $unicorn_config + rainbows -D -c $unicorn_config t0114.ru + rainbows_wait_start +} + +t_begin "ensure worker is started" && { + test xOK = x$(curl -T t0114.ru -sSf http://$listen/) +} + +t_begin "killing succeeds" && { + kill $rainbows_pid +} + +t_begin "check stderr" && { + check_stderr +} + +t_done diff --git a/t/t0114.ru b/t/t0114.ru new file mode 100644 index 0000000..b0bd2b7 --- /dev/null +++ b/t/t0114.ru @@ -0,0 +1,12 @@ +#\ -E none +use Rack::ContentLength +use Rack::ContentType, 'text/plain' +app = lambda do |env| + case env['rack.input'] + when Unicorn::TeeInput + [ 200, {}, %w(OK) ] + else + [ 500, {}, %w(NO) ] + end +end +run app -- cgit v1.2.3-24-ge0c7