提交 9d4225f1 编写于 作者: R Rick Olson

Fixed that dispatcher preparation callbacks only run once in production mode. ...

Fixed that dispatcher preparation callbacks only run once in production mode.  Mock Routes.reload so that dispatcher preparation callback tests run. [Rick]

git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@7033 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
上级 1ddaec1e
*SVN*
* Fixed that dispatcher preparation callbacks only run once in production mode. Mock Routes.reload so that dispatcher preparation callback tests run. [Rick]
* Fix syntax error in dispatcher than wrecked failsafe responses. #8625 [mtitorenko]
* Scaffolded validation errors set the appropriate HTTP status for XML responses. #6946, #8622 [Manfred Stienstra, mmmultiworks]
......
......@@ -88,7 +88,6 @@ def to_prepare(identifier = nil, &block)
private
attr_accessor_with_default :preparation_callbacks, []
attr_accessor_with_default :preparation_callbacks_run, false
alias_method :preparation_callbacks_run?, :preparation_callbacks_run
# CGI.new plus exception handling. CGI#read_multipart raises EOFError
# if body.empty? or body.size != Content-Length and raises ArgumentError
......@@ -113,7 +112,7 @@ def reset_after_dispatch
end
def run_preparation_callbacks
return if preparation_callbacks_run?
return if preparation_callbacks_run
preparation_callbacks.each { |_, callback| callback.call }
self.preparation_callbacks_run = true
end
......
......@@ -27,11 +27,18 @@ def setup
Dispatcher.send(:preparation_callbacks_run=, false)
Object.const_set :ApplicationController, nil
class << ActionController::Routing::Routes
alias_method :old_reload, :reload
def reload() end
end
end
def teardown
Object.send :remove_const, :ApplicationController
ENV['REQUEST_METHOD'] = nil
class << ActionController::Routing::Routes
alias_method :reload, :old_reload
end
end
def test_ac_subclasses_cleared_on_reset
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册