1
0
Fork 0
mirror of https://github.com/puma/puma.git synced 2022-11-09 13:48:40 -05:00

Make CGI Wrapper work with CGI::Session (closes: #8386)

git-svn-id: svn+ssh://rubyforge.org/var/svn/mongrel/trunk@555 19e92222-5c0b-0410-8929-a290d50e31e9
This commit is contained in:
filipe 2007-08-15 03:03:32 +00:00
parent 78d915289d
commit 16090717f2
2 changed files with 31 additions and 3 deletions

View file

@ -109,10 +109,10 @@ module Mongrel
end
@head.delete('cookie')
# @output_cookies seems to never be used, but we'll process it just in case
@output_cookies.each {|c| to['Set-Cookie'] = c.to_s } if @output_cookies
end
# @output_cookies seems to never be used, but we'll process it just in case
@output_cookies.each {|c| to['Set-Cookie'] = c.to_s } if @output_cookies
end
# The dumb thing is people can call header or this or both and in any order.

28
test/test_cgi_wrapper.rb Normal file
View file

@ -0,0 +1,28 @@
require 'test/unit'
require 'rubygems'
require 'mongrel'
require 'cgi/session'
class MockHttpRequest
attr_reader :body
def params
return { 'REQUEST_METHOD' => 'GET'}
end
end
class CGIWrapperTest < Test::Unit::TestCase
def test_set_cookies_output_cookies
request = MockHttpRequest.new
response = nil # not needed for this test
output_headers = {}
cgi = Mongrel::CGIWrapper.new(request, response)
session = CGI::Session.new(cgi, 'database_manager' => CGI::Session::MemoryStore)
cgi.send_cookies(output_headers)
assert(output_headers.has_key?("Set-Cookie"))
assert_equal("_session_id="+session.session_id+"; path=", output_headers["Set-Cookie"])
end
end