about summary refs log tree commit homepage
path: root/t
diff options
context:
space:
mode:
authorEric Wong <normalperson@yhbt.net>2010-12-08 18:35:27 -0800
committerEric Wong <normalperson@yhbt.net>2010-12-08 18:35:27 -0800
commit6b750f5f952963009a2e6e8702fc8f3d8adc94ea (patch)
tree3debc215a179f416883aae3c02fd4ea4a4b5a322 /t
parent10d96a76a1ea4431dd10ba181d747169c22c1cec (diff)
downloadrainbows-6b750f5f952963009a2e6e8702fc8f3d8adc94ea.tar.gz
This was completely overlooked for the Rainbows 2.0.x
releases.
Diffstat (limited to 't')
-rwxr-xr-xt/t0113-rewindable-input-false.sh26
-rw-r--r--t/t0113.ru12
-rwxr-xr-xt/t0114-rewindable-input-true.sh26
-rw-r--r--t/t0114.ru12
4 files changed, 76 insertions, 0 deletions
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