aboutsummaryrefslogtreecommitdiffstats
path: root/activerecord/test/cases
diff options
context:
space:
mode:
authorJon Moss <me@jonathanmoss.me>2016-05-25 20:51:37 -0400
committerJon Moss <me@jonathanmoss.me>2016-05-26 18:00:51 -0400
commit8e2e5f9e3d1f434e265dc104ea9b00ff75702fc3 (patch)
tree88505e8a287d8127ce2a2e7fb8281f309c5c5f5c /activerecord/test/cases
parent28a7c98fe665e40f40d4c69c0729ad0c0436bef2 (diff)
downloadrails-8e2e5f9e3d1f434e265dc104ea9b00ff75702fc3.tar.gz
rails-8e2e5f9e3d1f434e265dc104ea9b00ff75702fc3.tar.bz2
rails-8e2e5f9e3d1f434e265dc104ea9b00ff75702fc3.zip
Fix `has_one` `enum` `where` queries
Fixes #25128
Diffstat (limited to 'activerecord/test/cases')
-rw-r--r--activerecord/test/cases/associations/has_one_associations_test.rb18
1 files changed, 18 insertions, 0 deletions
diff --git a/activerecord/test/cases/associations/has_one_associations_test.rb b/activerecord/test/cases/associations/has_one_associations_test.rb
index c9d9e29f09..1574f373c2 100644
--- a/activerecord/test/cases/associations/has_one_associations_test.rb
+++ b/activerecord/test/cases/associations/has_one_associations_test.rb
@@ -659,4 +659,22 @@ class HasOneAssociationsTest < ActiveRecord::TestCase
assert_deprecated { firm.account(true) }
end
+
+ class SpecialBook < ActiveRecord::Base
+ self.table_name = 'books'
+ belongs_to :author, class_name: 'SpecialAuthor'
+ end
+
+ class SpecialAuthor < ActiveRecord::Base
+ self.table_name = 'authors'
+ has_one :book, class_name: 'SpecialBook', foreign_key: 'author_id'
+ end
+
+ def test_assocation_enum_works_properly
+ author = SpecialAuthor.create!(name: 'Test')
+ book = SpecialBook.create!(status: 'published')
+ author.book = book
+
+ refute_equal 0, SpecialAuthor.joins(:book).where(books: { status: 'published' } ).count
+ end
end