diff options
author | Eric Wong <normalperson@yhbt.net> | 2010-10-08 23:44:23 +0000 |
---|---|---|
committer | Eric Wong <normalperson@yhbt.net> | 2010-10-09 00:03:02 +0000 |
commit | 6eb46e422f4b2ba98c795fca5e18e7262c0c688e (patch) | |
tree | 805e041099199ce7e4154283b3e7b81d9485159d /t/preread_input.ru | |
parent | 9be78606355d4a0ad4ea59316ab2ce998c5b9a12 (diff) | |
download | unicorn-6eb46e422f4b2ba98c795fca5e18e7262c0c688e.tar.gz |
This may be useful for some apps that wish to drain the body before acquiring an app-wide lock. Maybe it's more useful with Rainbows!...
Diffstat (limited to 't/preread_input.ru')
-rw-r--r-- | t/preread_input.ru | 17 |
1 files changed, 17 insertions, 0 deletions
diff --git a/t/preread_input.ru b/t/preread_input.ru new file mode 100644 index 0000000..79685c4 --- /dev/null +++ b/t/preread_input.ru @@ -0,0 +1,17 @@ +#\-E none +require 'digest/sha1' +require 'unicorn/preread_input' +use Rack::ContentLength +use Rack::ContentType, "text/plain" +use Unicorn::PrereadInput +nr = 0 +run lambda { |env| + $stderr.write "app dispatch: #{nr += 1}\n" + input = env["rack.input"] + dig = Digest::SHA1.new + while buf = input.read(16384) + dig.update(buf) + end + + [ 200, {}, [ "#{dig.hexdigest}\n" ] ] +} |