1
0
Fork 0
mirror of https://github.com/rails/rails.git synced 2022-11-09 12:12:34 -05:00

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
This commit is contained in:
Rick Olson 2007-06-15 23:28:51 +00:00
parent 1ddaec1e68
commit 9d4225f129
3 changed files with 10 additions and 2 deletions

View file

@ -1,5 +1,7 @@
*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]

View file

@ -88,7 +88,6 @@ class Dispatcher
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 @@ class Dispatcher
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

View file

@ -27,11 +27,18 @@ class DispatcherTest < Test::Unit::TestCase
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