Intercept sends in Model::DeprecationProxy

This commit is contained in:
Jon Leighton 2011-12-24 14:19:03 +00:00
parent 6696f7e010
commit deb91690ae
2 changed files with 5 additions and 1 deletions

View File

@ -78,6 +78,8 @@ module ActiveRecord
Base.send(name, *args, &block) Base.send(name, *args, &block)
end end
end end
alias send method_missing
end end
end end
end end

View File

@ -84,14 +84,16 @@ class InclusionUnitTest < ActiveRecord::TestCase
assert_equal ActiveRecord::Model.name, ActiveRecord::Model::DeprecationProxy.name assert_equal ActiveRecord::Model.name, ActiveRecord::Model::DeprecationProxy.name
assert_equal ActiveRecord::Base.superclass, assert_deprecated { ActiveRecord::Model::DeprecationProxy.superclass } assert_equal ActiveRecord::Base.superclass, assert_deprecated { ActiveRecord::Model::DeprecationProxy.superclass }
sup = nil sup, sup2 = nil, nil
ActiveSupport.on_load(:__test_active_record_model_deprecation) do ActiveSupport.on_load(:__test_active_record_model_deprecation) do
sup = superclass sup = superclass
sup2 = send(:superclass)
end end
assert_deprecated do assert_deprecated do
ActiveSupport.run_load_hooks(:__test_active_record_model_deprecation, ActiveRecord::Model::DeprecationProxy) ActiveSupport.run_load_hooks(:__test_active_record_model_deprecation, ActiveRecord::Model::DeprecationProxy)
end end
assert_equal ActiveRecord::Base.superclass, sup assert_equal ActiveRecord::Base.superclass, sup
assert_equal ActiveRecord::Base.superclass, sup2
end end
end end