Permalink
Browse files

Fix test_any in relations_test.rb, which was failing when relations_t…

…est.rb is run on its own (it passes when the entire suite is run). This is a hacky fix for a problem I didn't quite get to the bottom of, so I'd welcome a better solution...
  • Loading branch information...
1 parent 4e194ed commit d6289aadce1b8fa93e799500e52f92ce8d159d6f @jonleighton jonleighton committed with tenderlove Jan 2, 2011
Showing with 8 additions and 0 deletions.
  1. +8 −0 activerecord/test/cases/relations_test.rb
View
8 activerecord/test/cases/relations_test.rb
@@ -640,6 +640,14 @@ def test_count_complex_chained_relations
def test_any
posts = Post.scoped
+ # This test was failing when run on its own (as opposed to running the entire suite).
+ # The second line in the assert_queries block was causing visit_Arel_Attributes_Attribute
+ # in Arel::Visitors::ToSql to trigger a SHOW TABLES query. Running that line here causes
+ # the SHOW TABLES result to be cached so we don't have to do it again in the block.
+ #
+ # This is obviously a rubbish fix but it's the best I can come up with for now...
+ posts.where(:id => nil).any?
+
assert_queries(3) do
assert posts.any? # Uses COUNT()
assert ! posts.where(:id => nil).any?

0 comments on commit d6289aa

Please sign in to comment.