aboutsummaryrefslogtreecommitdiffstats
path: root/activerecord/test/cases/associations/belongs_to_associations_test.rb
diff options
context:
space:
mode:
authorPratik Naik <pratiknaik@gmail.com>2008-10-13 19:01:37 +0200
committerPratik Naik <pratiknaik@gmail.com>2008-10-13 19:02:34 +0200
commit691aa20280456c332bfaaf69b58adc86fd86a2b8 (patch)
tree5841c2f0211b021d473fdba3eb03ac487ef50130 /activerecord/test/cases/associations/belongs_to_associations_test.rb
parent42cbd710bb116998f92029adacb45698905a2e3b (diff)
downloadrails-691aa20280456c332bfaaf69b58adc86fd86a2b8.tar.gz
rails-691aa20280456c332bfaaf69b58adc86fd86a2b8.tar.bz2
rails-691aa20280456c332bfaaf69b58adc86fd86a2b8.zip
Ensure methods called on association proxies respect access control. [#1083 state:resolved] [Adam Milligan, Pratik]
Diffstat (limited to 'activerecord/test/cases/associations/belongs_to_associations_test.rb')
-rw-r--r--activerecord/test/cases/associations/belongs_to_associations_test.rb10
1 files changed, 10 insertions, 0 deletions
diff --git a/activerecord/test/cases/associations/belongs_to_associations_test.rb b/activerecord/test/cases/associations/belongs_to_associations_test.rb
index 9c718c4fef..40a8503980 100644
--- a/activerecord/test/cases/associations/belongs_to_associations_test.rb
+++ b/activerecord/test/cases/associations/belongs_to_associations_test.rb
@@ -428,4 +428,14 @@ class BelongsToAssociationsTest < ActiveRecord::TestCase
assert log.valid?
assert log.save
end
+
+ def test_belongs_to_proxy_should_not_respond_to_private_methods
+ assert_raises(NoMethodError) { companies(:first_firm).private_method }
+ assert_raises(NoMethodError) { companies(:second_client).firm.private_method }
+ end
+
+ def test_belongs_to_proxy_should_respond_to_private_methods_via_send
+ companies(:first_firm).send(:private_method)
+ companies(:second_client).firm.send(:private_method)
+ end
end