diff options
Diffstat (limited to 'test/unit/test_request.rb')
-rw-r--r-- | test/unit/test_request.rb | 18 |
1 files changed, 15 insertions, 3 deletions
diff --git a/test/unit/test_request.rb b/test/unit/test_request.rb index 1896300..bd452a5 100644 --- a/test/unit/test_request.rb +++ b/test/unit/test_request.rb @@ -11,7 +11,11 @@ class RequestTest < Test::Unit::TestCase class MockRequest < StringIO alias_method :readpartial, :sysread + alias_method :kgio_read!, :sysread alias_method :read_nonblock, :sysread + def kgio_addr + '127.0.0.1' + end end def setup @@ -117,7 +121,7 @@ class RequestTest < Test::Unit::TestCase def test_no_content_stringio client = MockRequest.new("GET / HTTP/1.1\r\nHost: foo\r\n\r\n") - res = env = nil + env = nil assert_nothing_raised { env = @request.read(client) } assert_equal StringIO, env['rack.input'].class end @@ -126,7 +130,7 @@ class RequestTest < Test::Unit::TestCase client = MockRequest.new("PUT / HTTP/1.1\r\n" \ "Content-Length: 0\r\n" \ "Host: foo\r\n\r\n") - res = env = nil + env = nil assert_nothing_raised { env = @request.read(client) } assert_equal StringIO, env['rack.input'].class end @@ -135,7 +139,7 @@ class RequestTest < Test::Unit::TestCase client = MockRequest.new("PUT / HTTP/1.1\r\n" \ "Content-Length: 1\r\n" \ "Host: foo\r\n\r\n") - res = env = nil + env = nil assert_nothing_raised { env = @request.read(client) } assert_equal Unicorn::TeeInput, env['rack.input'].class end @@ -159,6 +163,14 @@ class RequestTest < Test::Unit::TestCase buf = (' ' * bs).freeze length = bs * count client = Tempfile.new('big_put') + def client.kgio_addr; '127.0.0.1'; end + def client.kgio_read(*args) + readpartial(*args) + rescue EOFError + end + def client.kgio_read!(*args) + readpartial(*args) + end client.syswrite( "PUT / HTTP/1.1\r\n" \ "Host: foo\r\n" \ |