diff options
author | Carlos Antonio da Silva <carlosantoniodasilva@gmail.com> | 2014-03-20 10:04:54 -0300 |
---|---|---|
committer | Carlos Antonio da Silva <carlosantoniodasilva@gmail.com> | 2014-03-20 10:04:54 -0300 |
commit | a2a7f8bf2039447ea84e4457379a73260c452abf (patch) | |
tree | 1b9828a05058ec835a9a0283960d06c344061703 /activesupport/test | |
parent | 3980d403ce230e589a06ac9f8af01a3e0113cc04 (diff) | |
parent | 41548df342197ac5bf2556f3fa508be6e090ca70 (diff) | |
download | rails-a2a7f8bf2039447ea84e4457379a73260c452abf.tar.gz rails-a2a7f8bf2039447ea84e4457379a73260c452abf.tar.bz2 rails-a2a7f8bf2039447ea84e4457379a73260c452abf.zip |
Merge pull request #14271 from akshay-vishnoi/fixes
Deprecate superclass_delegating_accessor, use class_attribute instead.
Diffstat (limited to 'activesupport/test')
-rw-r--r-- | activesupport/test/core_ext/class/delegating_attributes_test.rb | 34 |
1 files changed, 28 insertions, 6 deletions
diff --git a/activesupport/test/core_ext/class/delegating_attributes_test.rb b/activesupport/test/core_ext/class/delegating_attributes_test.rb index 0e0742d147..86193c2b07 100644 --- a/activesupport/test/core_ext/class/delegating_attributes_test.rb +++ b/activesupport/test/core_ext/class/delegating_attributes_test.rb @@ -6,14 +6,18 @@ module DelegatingFixtures end class Child < Parent - superclass_delegating_accessor :some_attribute + ActiveSupport::Deprecation.silence do + superclass_delegating_accessor :some_attribute + end end class Mokopuna < Child end class PercysMom - superclass_delegating_accessor :superpower + ActiveSupport::Deprecation.silence do + superclass_delegating_accessor :superpower + end end class Percy < PercysMom @@ -29,7 +33,10 @@ class DelegatingAttributesTest < ActiveSupport::TestCase end def test_simple_accessor_declaration - single_class.superclass_delegating_accessor :both + ActiveSupport::Deprecation.silence do + single_class.superclass_delegating_accessor :both + end + # Class should have accessor and mutator # the instance should have an accessor only assert_respond_to single_class, :both @@ -40,7 +47,11 @@ class DelegatingAttributesTest < ActiveSupport::TestCase def test_simple_accessor_declaration_with_instance_reader_false _instance_methods = single_class.public_instance_methods - single_class.superclass_delegating_accessor :no_instance_reader, :instance_reader => false + + ActiveSupport::Deprecation.silence do + single_class.superclass_delegating_accessor :no_instance_reader, :instance_reader => false + end + assert_respond_to single_class, :no_instance_reader assert_respond_to single_class, :no_instance_reader= assert !_instance_methods.include?(:no_instance_reader) @@ -49,7 +60,9 @@ class DelegatingAttributesTest < ActiveSupport::TestCase end def test_working_with_simple_attributes - single_class.superclass_delegating_accessor :both + ActiveSupport::Deprecation.silence do + single_class.superclass_delegating_accessor :both + end single_class.both = "HMMM" @@ -65,7 +78,11 @@ class DelegatingAttributesTest < ActiveSupport::TestCase def test_child_class_delegates_to_parent_but_can_be_overridden parent = Class.new - parent.superclass_delegating_accessor :both + + ActiveSupport::Deprecation.silence do + parent.superclass_delegating_accessor :both + end + child = Class.new(parent) parent.both = "1" assert_equal "1", child.both @@ -97,4 +114,9 @@ class DelegatingAttributesTest < ActiveSupport::TestCase Child.some_attribute=nil end + def test_deprecation_warning + assert_deprecated(/superclass_delegating_accessor is deprecated/) do + single_class.superclass_delegating_accessor :test_attribute + end + end end |