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:
parent
78d915289d
commit
16090717f2
2 changed files with 31 additions and 3 deletions
|
@ -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
28
test/test_cgi_wrapper.rb
Normal 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
|
Loading…
Add table
Reference in a new issue