diff options
Diffstat (limited to 'activerecord/test')
-rwxr-xr-x | activerecord/test/cases/associations_test.rb | 5 | ||||
-rw-r--r-- | activerecord/test/models/author.rb | 5 |
2 files changed, 10 insertions, 0 deletions
diff --git a/activerecord/test/cases/associations_test.rb b/activerecord/test/cases/associations_test.rb index 0a05bd0e56..3c14ee0881 100755 --- a/activerecord/test/cases/associations_test.rb +++ b/activerecord/test/cases/associations_test.rb @@ -1324,6 +1324,11 @@ class HasManyAssociationsTest < ActiveRecord::TestCase assert_equal 2, people(:michael).posts.find(:all, :include => :people).length end + def test_has_many_through_respects_hash_conditions + assert_equal authors(:david).hello_posts, authors(:david).hello_posts_with_hash_conditions + assert_equal authors(:david).hello_post_comments, authors(:david).hello_post_comments_with_hash_conditions + end + end class BelongsToAssociationsTest < ActiveRecord::TestCase diff --git a/activerecord/test/models/author.rb b/activerecord/test/models/author.rb index 79a121b4a4..2918139f7f 100644 --- a/activerecord/test/models/author.rb +++ b/activerecord/test/models/author.rb @@ -35,6 +35,11 @@ class Author < ActiveRecord::Base has_many :hello_post_comments, :through => :hello_posts, :source => :comments has_many :posts_with_no_comments, :class_name => 'Post', :conditions => 'comments.id is null', :include => :comments + has_many :hello_posts_with_hash_conditions, :class_name => "Post", +:conditions => {:body => 'hello'} + has_many :hello_post_comments_with_hash_conditions, :through => +:hello_posts_with_hash_conditions, :source => :comments + has_many :other_posts, :class_name => "Post" has_many :posts_with_callbacks, :class_name => "Post", :before_add => :log_before_adding, :after_add => :log_after_adding, |