Skip to content

Commit

Permalink
Merge pull request #294 from josevalim/empty_session_fix
Browse files Browse the repository at this point in the history
Ensure the session is loaded before checking for empty.
  • Loading branch information
raggi committed Dec 27, 2011
2 parents 131263d + cae96d9 commit 6d9cd64
Show file tree
Hide file tree
Showing 2 changed files with 10 additions and 0 deletions.
5 changes: 5 additions & 0 deletions lib/rack/session/abstract/id.rb
Expand Up @@ -111,6 +111,11 @@ def loaded?
@loaded
end

def empty?
load_for_read!
super
end

private

def load_for_read!
Expand Down
5 changes: 5 additions & 0 deletions test/spec_session_cookie.rb
Expand Up @@ -106,11 +106,16 @@ def decode(str); @calls << :decode; str; end
res = Rack::MockRequest.new(Rack::Session::Cookie.new(incrementor)).get("/")
res = Rack::MockRequest.new(Rack::Session::Cookie.new(only_session_id)).
get("/", "HTTP_COOKIE" => res["Set-Cookie"])

res.body.should.not.equal ""
old_session_id = res.body

res = Rack::MockRequest.new(Rack::Session::Cookie.new(renewer)).
get("/", "HTTP_COOKIE" => res["Set-Cookie"])
res = Rack::MockRequest.new(Rack::Session::Cookie.new(only_session_id)).
get("/", "HTTP_COOKIE" => res["Set-Cookie"])

res.body.should.not.equal ""
res.body.should.not.equal old_session_id
end

Expand Down

0 comments on commit 6d9cd64

Please sign in to comment.