diff options
author | Xavier Noria <fxn@hashref.com> | 2013-04-20 09:26:07 +0200 |
---|---|---|
committer | Xavier Noria <fxn@hashref.com> | 2013-04-20 09:26:11 +0200 |
commit | 0400a7ff574f83f2f5d5c3f7d7569bfb37963dda (patch) | |
tree | 9dfcd4ee3f38f502ecbf943f8d7c8301898e90d1 /activerecord/test | |
parent | d32ef7c7a5a1e29f64eb3c2240c642c7b0c73f25 (diff) | |
download | rails-0400a7ff574f83f2f5d5c3f7d7569bfb37963dda.tar.gz rails-0400a7ff574f83f2f5d5c3f7d7569bfb37963dda.tar.bz2 rails-0400a7ff574f83f2f5d5c3f7d7569bfb37963dda.zip |
if singletons belong to the contract, test them
Object#respond_to? returns singletons and thus we inherit that contract.
The implementation of the predicate is good, but the test is only
checking boolean semantics, which in this case is not enough.
Diffstat (limited to 'activerecord/test')
-rw-r--r-- | activerecord/test/cases/relation_test.rb | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/activerecord/test/cases/relation_test.rb b/activerecord/test/cases/relation_test.rb index 06723b9d7f..482c1b3d48 100644 --- a/activerecord/test/cases/relation_test.rb +++ b/activerecord/test/cases/relation_test.rb @@ -186,8 +186,11 @@ module ActiveRecord end def test_respond_to_for_non_selected_element + post = Post.select(:title).first + assert_equal false, post.respond_to?(:body), "post should not respond_to?(:body) since invoking it raises exception" + post = Post.select("'title' as post_title").first - assert !post.respond_to?(:body), "post should not respond_to?(:body) since invoking it raises exception" + assert_equal false, post.respond_to?(:title), "post should not respond_to?(:body) since invoking it raises exception" end end |