aboutsummaryrefslogtreecommitdiffstats
path: root/actionpack
diff options
context:
space:
mode:
authorIonatan Wiznia <ionatan.wiznia@traddia.com>2014-02-06 20:11:40 +0100
committerIonatan Wiznia <ionatan.wiznia@traddia.com>2014-02-06 20:11:40 +0100
commitf8d740af933e81648f69c65fb8229dd21beb4abb (patch)
tree7eeebce80c78abddc069eb0ad2ef30e3005f18d5 /actionpack
parentc0fb8d0b9c4d55770f7ce1a9cb62e4f2a75ca3ee (diff)
downloadrails-f8d740af933e81648f69c65fb8229dd21beb4abb.tar.gz
rails-f8d740af933e81648f69c65fb8229dd21beb4abb.tar.bz2
rails-f8d740af933e81648f69c65fb8229dd21beb4abb.zip
Tests that skips a controller filters that was set up using a class
Diffstat (limited to 'actionpack')
-rw-r--r--actionpack/test/controller/filters_test.rb16
1 files changed, 16 insertions, 0 deletions
diff --git a/actionpack/test/controller/filters_test.rb b/actionpack/test/controller/filters_test.rb
index d3efca5b6f..c87494aa64 100644
--- a/actionpack/test/controller/filters_test.rb
+++ b/actionpack/test/controller/filters_test.rb
@@ -225,6 +225,10 @@ class FilterTest < ActionController::TestCase
skip_before_filter :clean_up_tmp, if: -> { true }
end
+ class ClassController < ConditionalFilterController
+ before_filter ConditionalClassFilter
+ end
+
class PrependingController < TestController
prepend_before_filter :wonderful_life
# skip_before_filter :fire_flash
@@ -610,6 +614,18 @@ class FilterTest < ActionController::TestCase
assert_equal %w( ensure_login ), assigns["ran_filter"]
end
+ def test_skipping_class_filters
+ test_process(ClassController)
+ assert_equal true, assigns["ran_class_filter"]
+
+ skipping_class_controller = Class.new(ClassController) do
+ skip_before_filter ConditionalClassFilter
+ end
+
+ test_process(skipping_class_controller)
+ assert_nil assigns['ran_class_filter']
+ end
+
def test_running_collection_condition_filters
test_process(ConditionalCollectionFilterController)
assert_equal %w( ensure_login ), assigns["ran_filter"]