aboutsummaryrefslogtreecommitdiffstats
path: root/activesupport/test/core_ext/module_test.rb
diff options
context:
space:
mode:
authorAgis- <corestudiosinc@gmail.com>2014-09-18 23:55:13 +0300
committerAgis- <corestudiosinc@gmail.com>2014-09-19 11:41:41 +0300
commit1a787ebb7e4366147bf83ed7bb8b362164c841d5 (patch)
treed0d1b00858243346d4fd5bb249da2d0c59cf8e5b /activesupport/test/core_ext/module_test.rb
parentc2dfc316912e780dfd6113e6ab9668128264f111 (diff)
downloadrails-1a787ebb7e4366147bf83ed7bb8b362164c841d5.tar.gz
rails-1a787ebb7e4366147bf83ed7bb8b362164c841d5.tar.bz2
rails-1a787ebb7e4366147bf83ed7bb8b362164c841d5.zip
Delegation works with reserved words passed to `:to`
Fixes #16956.
Diffstat (limited to 'activesupport/test/core_ext/module_test.rb')
-rw-r--r--activesupport/test/core_ext/module_test.rb11
1 files changed, 11 insertions, 0 deletions
diff --git a/activesupport/test/core_ext/module_test.rb b/activesupport/test/core_ext/module_test.rb
index 380f5ad42b..3c49c4d14f 100644
--- a/activesupport/test/core_ext/module_test.rb
+++ b/activesupport/test/core_ext/module_test.rb
@@ -56,8 +56,14 @@ Developer = Struct.new(:client) do
delegate :name, :to => :client, :prefix => nil
end
+Event = Struct.new(:case) do
+ delegate :foo, :to => :case
+end
+
Tester = Struct.new(:client) do
delegate :name, :to => :client, :prefix => false
+
+ def foo; 1; end
end
Product = Struct.new(:name) do
@@ -495,4 +501,9 @@ class MethodAliasingTest < ActiveSupport::TestCase
assert_equal 'duck_with_orange', @instance.duck
assert FooClassWithBarMethod.public_method_defined?(:duck)
end
+
+ def test_delegate_with_case
+ event = Event.new(Tester.new)
+ assert_equal 1, event.foo
+ end
end