diff options
author | Ryuta Kamizono <kamipo@gmail.com> | 2018-10-09 03:31:34 +0900 |
---|---|---|
committer | Ryuta Kamizono <kamipo@gmail.com> | 2018-10-09 03:46:22 +0900 |
commit | a1ee4a9ff9d4a3cb255365310ead0dc7b739c6be (patch) | |
tree | d2ad6db8cfd9b65a6101e9a57b0c4269e36f648f /activerecord/test/cases/associations/has_and_belongs_to_many_associations_test.rb | |
parent | 3882a4d0d475f1347a7dc3774e9285c80b1c8fe2 (diff) | |
download | rails-a1ee4a9ff9d4a3cb255365310ead0dc7b739c6be.tar.gz rails-a1ee4a9ff9d4a3cb255365310ead0dc7b739c6be.tar.bz2 rails-a1ee4a9ff9d4a3cb255365310ead0dc7b739c6be.zip |
Call `define_attribute_methods` before `assert_no_queries` to address CI flakiness
Follow up 45be690f8e6db019aac6198ba49d608a2e14824b.
Somehow calling `define_attribute_methods` in `build`/`new` sometimes
causes the `table_exists?` query.
To address CI flakiness due to `assert_no_queries` failure, ensure
`define_attribute_methods` before `assert_no_queries`.
Diffstat (limited to 'activerecord/test/cases/associations/has_and_belongs_to_many_associations_test.rb')
-rw-r--r-- | activerecord/test/cases/associations/has_and_belongs_to_many_associations_test.rb | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/activerecord/test/cases/associations/has_and_belongs_to_many_associations_test.rb b/activerecord/test/cases/associations/has_and_belongs_to_many_associations_test.rb index a90dcc0576..38b121d37b 100644 --- a/activerecord/test/cases/associations/has_and_belongs_to_many_associations_test.rb +++ b/activerecord/test/cases/associations/has_and_belongs_to_many_associations_test.rb @@ -310,6 +310,10 @@ class HasAndBelongsToManyAssociationsTest < ActiveRecord::TestCase def test_build devel = Developer.find(1) + + # Load schema information so we don't query below if running just this test. + Project.define_attribute_methods + proj = assert_no_queries { devel.projects.build("name" => "Projekt") } assert_not_predicate devel.projects, :loaded? @@ -325,6 +329,10 @@ class HasAndBelongsToManyAssociationsTest < ActiveRecord::TestCase def test_new_aliased_to_build devel = Developer.find(1) + + # Load schema information so we don't query below if running just this test. + Project.define_attribute_methods + proj = assert_no_queries { devel.projects.new("name" => "Projekt") } assert_not_predicate devel.projects, :loaded? |