diff options
Diffstat (limited to 'activerecord/test')
-rwxr-xr-x | activerecord/test/associations_test.rb | 7 | ||||
-rw-r--r-- | activerecord/test/fixtures/category.rb | 6 |
2 files changed, 13 insertions, 0 deletions
diff --git a/activerecord/test/associations_test.rb b/activerecord/test/associations_test.rb index 607f12bdb5..99cb9ac0a1 100755 --- a/activerecord/test/associations_test.rb +++ b/activerecord/test/associations_test.rb @@ -1761,6 +1761,13 @@ class HasAndBelongsToManyAssociationsTest < Test::Unit::TestCase assert welcome.save! end + def test_habtm_respects_select + categories(:technology).select_testing_posts(true).each do |o| + assert_respond_to o, :correctness_marker + end + assert_respond_to categories(:technology).select_testing_posts.find(:first), :correctness_marker + end + def test_updating_attributes_on_rich_associations david = projects(:action_controller).developers.first david.name = "DHH" diff --git a/activerecord/test/fixtures/category.rb b/activerecord/test/fixtures/category.rb index 295bd8277f..71685234e3 100644 --- a/activerecord/test/fixtures/category.rb +++ b/activerecord/test/fixtures/category.rb @@ -3,6 +3,12 @@ class Category < ActiveRecord::Base has_and_belongs_to_many :special_posts, :class_name => "Post" has_and_belongs_to_many :other_posts, :class_name => "Post" + has_and_belongs_to_many(:select_testing_posts, + :class_name => 'Post', + :foreign_key => 'category_id', + :association_foreign_key => 'post_id', + :select => 'posts.*, 1 as correctness_marker') + def self.what_are_you 'a category...' end |