diff options
-rw-r--r-- | lib/kcar.rb | 3 | ||||
-rw-r--r-- | lib/kcar/response.rb (renamed from lib/kcar/session.rb) | 2 | ||||
-rw-r--r-- | test/test_response.rb (renamed from test/test_session.rb) | 48 |
3 files changed, 27 insertions, 26 deletions
diff --git a/lib/kcar.rb b/lib/kcar.rb index 2a4518d..0d98793 100644 --- a/lib/kcar.rb +++ b/lib/kcar.rb @@ -1,7 +1,8 @@ # -*- encoding: binary -*- -require 'kcar/session' +require 'kcar/response' require 'kcar/parser' + module Kcar VERSION = '0.1.0' diff --git a/lib/kcar/session.rb b/lib/kcar/response.rb index bb67dae..724e1df 100644 --- a/lib/kcar/session.rb +++ b/lib/kcar/response.rb @@ -1,7 +1,7 @@ # -*- encoding: binary -*- module Kcar -class Session < Struct.new(:sock, :unchunk, :hdr, :buf, :parser) +class Response < Struct.new(:sock, :unchunk, :hdr, :buf, :parser) LAST_CHUNK = "0\r\n" CRLF = "\r\n" diff --git a/test/test_session.rb b/test/test_response.rb index aef7d70..54a3bf3 100644 --- a/test/test_session.rb +++ b/test/test_response.rb @@ -15,8 +15,8 @@ class TestSession < Test::Unit::TestCase @s.close end @s.close - @session = Kcar::Session.new(@c) - status, headers, body = @session.read + @response = Kcar::Response.new(@c) + status, headers, body = @response.read assert_equal status, "200 OK" assert headers.empty? tmp = [] @@ -33,8 +33,8 @@ class TestSession < Test::Unit::TestCase pid = fork do @s << "HTTP/1.1 200 OK\r\nContent-Length: 2\r\n\r\nHI" end - @session = Kcar::Session.new(@c) - status, headers, body = @session.read + @response = Kcar::Response.new(@c) + status, headers, body = @response.read assert_equal status, "200 OK" assert_equal({"Content-Length" => "2" }, headers) tmp = [] @@ -50,7 +50,7 @@ class TestSession < Test::Unit::TestCase @s << "HTTP/1.1 200 OK\r\nContent-Length: 3\r\n" @s << "Connection: close\r\n\r\nBYE" end - status, headers, body = @session.read + status, headers, body = @response.read assert_equal status, "200 OK" assert_equal({ "Content-Length" => "3", "Connection" => "close" }, headers) tmp = [] @@ -64,13 +64,13 @@ class TestSession < Test::Unit::TestCase end def test_http_keepalive_chunky - @session = Kcar::Session.new(@c) + @response = Kcar::Response.new(@c) pid = fork do @s << "HTTP/1.1 200 OK\r\nTransfer-Encoding: chunked\r\n\r\n" @s << "5\r\nabcde\r\n" @s << "0\r\n\r\nHTTP/1.1 " # partial response end - status, headers, body = @session.read + status, headers, body = @response.read assert_equal status, "200 OK" assert_equal({"Transfer-Encoding" => "chunked" }, headers) tmp = [] @@ -81,13 +81,13 @@ class TestSession < Test::Unit::TestCase assert status.success? body.close assert ! @c.closed? - assert_equal "HTTP/1.1 ", @session.buf + assert_equal "HTTP/1.1 ", @response.buf pid = fork do @s << "200 OK\r\nContent-Length: 3\r\n" @s << "Connection: close\r\n\r\nBYE" end - status, headers, body = @session.read + status, headers, body = @response.read assert_equal status, "200 OK" assert_equal({ "Content-Length" => "3", "Connection" => "close" }, headers) tmp = [] @@ -102,8 +102,8 @@ class TestSession < Test::Unit::TestCase def test_http_no_body_keepalive pid = fork { @s << "HTTP/1.1 100 Continue\r\n\r\n" } - @session = Kcar::Session.new(@c) - status, headers, body = @session.read + @response = Kcar::Response.new(@c) + status, headers, body = @response.read assert_equal status, "100 Continue" assert_equal({}, headers) tmp = [] @@ -117,7 +117,7 @@ class TestSession < Test::Unit::TestCase pid = fork { @s << "HTTP/1.1 200 OK\r\nConnection: close\r\n\r\nhello" } @s.close - status, headers, body = @session.read + status, headers, body = @response.read assert_equal status, "200 OK" assert_equal({'Connection' => 'close'}, headers) tmp = [] @@ -135,8 +135,8 @@ class TestSession < Test::Unit::TestCase @s << "HTTP/1.1 200 OK\r\nTrailer: Foo\r\n" @s << "Transfer-Encoding: chunked\r\n\r\n" end - @session = Kcar::Session.new(@c) - status, headers, body = @session.read + @response = Kcar::Response.new(@c) + status, headers, body = @response.read assert_equal status, "200 OK" expect = { "Trailer" => "Foo", @@ -163,8 +163,8 @@ class TestSession < Test::Unit::TestCase @s << "HTTP/1.1 200 OK\r\nTrailer: Foo\r\n" @s << "Transfer-Encoding: chunked\r\n\r\n" end - @session = Kcar::Session.new(@c, false) - status, headers, body = @session.read + @response = Kcar::Response.new(@c, false) + status, headers, body = @response.read assert_equal status, "200 OK" expect = { "Trailer" => "Foo", @@ -191,8 +191,8 @@ class TestSession < Test::Unit::TestCase @s << "HTTP/1.0 200 OK\r\n" @s << "Content-Type: text/plain\r\n\r\n" end - @session = Kcar::Session.new(@c, false) - status, headers, body = @session.read + @response = Kcar::Response.new(@c, false) + status, headers, body = @response.read assert_equal status, "200 OK" expect = { "Content-Type" => "text/plain", } assert_equal(expect, headers) @@ -216,8 +216,8 @@ class TestSession < Test::Unit::TestCase @s << "HTTP/1.1 200 OK\r\nTrailer: Foo\r\n" @s << "Transfer-Encoding: chunked\r\n\r\n" end - @session = Kcar::Session.new(@c) - status, headers, body = @session.read + @response = Kcar::Response.new(@c) + status, headers, body = @response.read assert_equal status, "200 OK" expect = { "Trailer" => "Foo", @@ -261,8 +261,8 @@ class TestSession < Test::Unit::TestCase @s << "HTTP/1.1 200 OK\r\nTrailer: Foo\r\n" @s << "Transfer-Encoding: chunked\r\n\r\n" end - @session = Kcar::Session.new(@c, false) - status, headers, body = @session.read + @response = Kcar::Response.new(@c, false) + status, headers, body = @response.read assert_equal status, "200 OK" expect = { "Trailer" => "Foo", @@ -303,8 +303,8 @@ class TestSession < Test::Unit::TestCase def test_identity_burpy pid = fork { @s << "HTTP/1.1 200 OK\r\nContent-Length: 5\r\n\r\n" } - @session = Kcar::Session.new(@c) - status, headers, body = @session.read + @response = Kcar::Response.new(@c) + status, headers, body = @response.read assert_equal status, "200 OK" expect = { "Content-Length" => '5' } assert_equal(expect, headers) |