diff options
author | Piotr Sarnacki <drogus@gmail.com> | 2012-03-14 12:53:19 -0700 |
---|---|---|
committer | Piotr Sarnacki <drogus@gmail.com> | 2012-03-14 12:53:19 -0700 |
commit | 1efeb072bf39c3eeef9a0d8874e58a4bd9850db6 (patch) | |
tree | f33ca168daa8e2a09d691ff117057ba5c4297299 | |
parent | 25861e22a1174fe5c8f789bb2bf112aaef947f32 (diff) | |
parent | b4b0fddb24b0e6cbff6936606689984274cecd15 (diff) | |
download | rails-1efeb072bf39c3eeef9a0d8874e58a4bd9850db6.tar.gz rails-1efeb072bf39c3eeef9a0d8874e58a4bd9850db6.tar.bz2 rails-1efeb072bf39c3eeef9a0d8874e58a4bd9850db6.zip |
Merge pull request #5357 from bagilevi/sweeper-undefined-method-ignored
Don't ignore call to undefined method in Sweeper
-rw-r--r-- | actionpack/lib/action_controller/caching/sweeping.rb | 2 | ||||
-rw-r--r-- | actionpack/test/controller/sweeper_test.rb | 16 |
2 files changed, 17 insertions, 1 deletions
diff --git a/actionpack/lib/action_controller/caching/sweeping.rb b/actionpack/lib/action_controller/caching/sweeping.rb index 49cf70ec21..808a6fe5f3 100644 --- a/actionpack/lib/action_controller/caching/sweeping.rb +++ b/actionpack/lib/action_controller/caching/sweeping.rb @@ -88,7 +88,7 @@ module ActionController #:nodoc: end def method_missing(method, *arguments, &block) - return unless @controller + super unless @controller @controller.__send__(method, *arguments, &block) end end diff --git a/actionpack/test/controller/sweeper_test.rb b/actionpack/test/controller/sweeper_test.rb new file mode 100644 index 0000000000..0561efc62f --- /dev/null +++ b/actionpack/test/controller/sweeper_test.rb @@ -0,0 +1,16 @@ +require 'abstract_unit' + + +class SweeperTest < ActionController::TestCase + + class ::AppSweeper < ActionController::Caching::Sweeper; end + + def test_sweeper_should_not_ignore_unknown_method_calls + sweeper = ActionController::Caching::Sweeper.send(:new) + assert_raise NameError do + sweeper.instance_eval do + some_method_that_doesnt_exist + end + end + end +end |