Allow AR Session Store to be renewed
This commit is contained in:
parent
2651a87a33
commit
9c9f416d39
@ -27,6 +27,12 @@ def call_reset_session
|
||||
head :ok
|
||||
end
|
||||
|
||||
def renew
|
||||
env["rack.session.options"][:renew] = true
|
||||
session[:foo] = "baz"
|
||||
head :ok
|
||||
end
|
||||
|
||||
def rescue_action(e) raise end
|
||||
end
|
||||
|
||||
@ -64,6 +70,20 @@ def teardown
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
define_method("test_renewing_with_#{class_name}_store") do
|
||||
with_store class_name do
|
||||
with_test_route_set do
|
||||
get '/set_session_value'
|
||||
assert_response :success
|
||||
assert cookies['_session_id']
|
||||
|
||||
get '/renew'
|
||||
assert_response :success
|
||||
assert_not_equal [], headers['Set-Cookie']
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
def test_getting_nil_session_value
|
||||
|
@ -321,6 +321,7 @@ def destroy_session(env, session_id, options)
|
||||
if sid = current_session_id(env)
|
||||
Base.silence do
|
||||
get_session_model(env, sid).destroy
|
||||
env[SESSION_RECORD_KEY] = nil
|
||||
end
|
||||
end
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user