mirror of
https://github.com/rails/rails.git
synced 2022-11-09 12:12:34 -05:00
SessionRestoreError belongs in AD
This commit is contained in:
parent
542ddde5d4
commit
3fb623fa90
5 changed files with 12 additions and 13 deletions
|
@ -44,7 +44,6 @@ module ActionController
|
|||
autoload :Cookies, 'action_controller/metal/cookies'
|
||||
|
||||
autoload :ActionControllerError, 'action_controller/metal/exceptions'
|
||||
autoload :SessionRestoreError, 'action_controller/metal/exceptions'
|
||||
autoload :RenderError, 'action_controller/metal/exceptions'
|
||||
autoload :RoutingError, 'action_controller/metal/exceptions'
|
||||
autoload :MethodNotAllowed, 'action_controller/metal/exceptions'
|
||||
|
|
|
@ -2,9 +2,6 @@ module ActionController
|
|||
class ActionControllerError < StandardError #:nodoc:
|
||||
end
|
||||
|
||||
class SessionRestoreError < ActionControllerError #:nodoc:
|
||||
end
|
||||
|
||||
class RenderError < ActionControllerError #:nodoc:
|
||||
end
|
||||
|
||||
|
|
|
@ -3,7 +3,7 @@ require 'active_support/core_ext/module/delegation'
|
|||
|
||||
module ActionDispatch # :nodoc:
|
||||
# Represents an HTTP response generated by a controller action. One can use
|
||||
# an ActionController::Response object to retrieve the current state
|
||||
# an ActionDispatch::Response object to retrieve the current state
|
||||
# of the response, or customize the response. An Response object can
|
||||
# either represent a "real" HTTP response (i.e. one that is meant to be sent
|
||||
# back to the web browser) or a test response (i.e. one that is generated
|
||||
|
@ -18,14 +18,14 @@ module ActionDispatch # :nodoc:
|
|||
# Nevertheless, integration tests may want to inspect controller responses in
|
||||
# more detail, and that's when Response can be useful for application
|
||||
# developers. Integration test methods such as
|
||||
# ActionController::Integration::Session#get and
|
||||
# ActionController::Integration::Session#post return objects of type
|
||||
# ActionDispatch::Integration::Session#get and
|
||||
# ActionDispatch::Integration::Session#post return objects of type
|
||||
# TestResponse (which are of course also of type Response).
|
||||
#
|
||||
# For example, the following demo integration "test" prints the body of the
|
||||
# controller response to the console:
|
||||
#
|
||||
# class DemoControllerTest < ActionController::IntegrationTest
|
||||
# class DemoControllerTest < ActionDispatch::IntegrationTest
|
||||
# def test_print_root_path_to_console
|
||||
# get('/')
|
||||
# puts @response.body
|
||||
|
|
|
@ -2,6 +2,9 @@ require 'rack/utils'
|
|||
|
||||
module ActionDispatch
|
||||
module Session
|
||||
class SessionRestoreError < StandardError #:nodoc:
|
||||
end
|
||||
|
||||
class AbstractStore
|
||||
ENV_SESSION_KEY = 'rack.session'.freeze
|
||||
ENV_SESSION_OPTIONS_KEY = 'rack.session.options'.freeze
|
||||
|
@ -19,7 +22,7 @@ module ActionDispatch
|
|||
|
||||
def session_id
|
||||
ActiveSupport::Deprecation.warn(
|
||||
"ActionController::Session::AbstractStore::SessionHash#session_id " +
|
||||
"ActionDispatch::Session::AbstractStore::SessionHash#session_id " +
|
||||
"has been deprecated. Please use request.session_options[:id] instead.", caller)
|
||||
@env[ENV_SESSION_OPTIONS_KEY][:id]
|
||||
end
|
||||
|
@ -62,7 +65,7 @@ module ActionDispatch
|
|||
|
||||
def data
|
||||
ActiveSupport::Deprecation.warn(
|
||||
"ActionController::Session::AbstractStore::SessionHash#data " +
|
||||
"ActionDispatch::Session::AbstractStore::SessionHash#data " +
|
||||
"has been deprecated. Please use #to_hash instead.", caller)
|
||||
to_hash
|
||||
end
|
||||
|
@ -98,7 +101,7 @@ module ActionDispatch
|
|||
# Note that the regexp does not allow $1 to end with a ':'
|
||||
$1.constantize
|
||||
rescue LoadError, NameError => const_error
|
||||
raise ActionController::SessionRestoreError, "Session contains objects whose class definition isn't available.\nRemember to require the classes for all objects kept in the session.\n(Original exception: #{const_error.message} [#{const_error.class}])\n"
|
||||
raise ActionDispatch::SessionRestoreError, "Session contains objects whose class definition isn't available.\nRemember to require the classes for all objects kept in the session.\n(Original exception: #{const_error.message} [#{const_error.class}])\n"
|
||||
end
|
||||
|
||||
retry
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
module ActionDispatch
|
||||
# Integration test methods such as ActionController::Integration::Session#get
|
||||
# and ActionController::Integration::Session#post return objects of class
|
||||
# Integration test methods such as ActionDispatch::Integration::Session#get
|
||||
# and ActionDispatch::Integration::Session#post return objects of class
|
||||
# TestResponse, which represent the HTTP response results of the requested
|
||||
# controller actions.
|
||||
#
|
||||
|
|
Loading…
Reference in a new issue