aboutsummaryrefslogtreecommitdiffstats
path: root/activerecord/test/cases/explain_test.rb
diff options
context:
space:
mode:
authorXavier Noria <fxn@hashref.com>2012-01-26 02:50:46 -0800
committerXavier Noria <fxn@hashref.com>2012-01-26 02:51:18 -0800
commit24834606c2c41c362ea10b8ae35b45aaffd9c483 (patch)
tree74146880de1e50d8b8bfe04e3d4edf22fb492865 /activerecord/test/cases/explain_test.rb
parent3a087b8b5e3da3f8cf5a68b6bd354497810bbbd9 (diff)
downloadrails-24834606c2c41c362ea10b8ae35b45aaffd9c483.tar.gz
rails-24834606c2c41c362ea10b8ae35b45aaffd9c483.tar.bz2
rails-24834606c2c41c362ea10b8ae35b45aaffd9c483.zip
disable automatic explain if there is no logger [closes #4671]
Diffstat (limited to 'activerecord/test/cases/explain_test.rb')
-rw-r--r--activerecord/test/cases/explain_test.rb16
1 files changed, 15 insertions, 1 deletions
diff --git a/activerecord/test/cases/explain_test.rb b/activerecord/test/cases/explain_test.rb
index 6ae6f83446..83c9b6e107 100644
--- a/activerecord/test/cases/explain_test.rb
+++ b/activerecord/test/cases/explain_test.rb
@@ -14,7 +14,7 @@ if ActiveRecord::Base.connection.supports_explain?
base.connection
end
- def test_logging_query_plan
+ def test_logging_query_plan_with_logger
base.logger.expects(:warn).with do |message|
message.starts_with?('EXPLAIN for:')
end
@@ -24,6 +24,20 @@ if ActiveRecord::Base.connection.supports_explain?
end
end
+ def test_logging_query_plan_without_logger
+ original = base.logger
+ base.logger = nil
+
+ base.logger.expects(:warn).never
+
+ with_threshold(0) do
+ car = Car.where(:name => 'honda').first
+ assert_equal 'honda', car.name
+ end
+ ensure
+ base.logger = original
+ end
+
def test_collect_queries_for_explain
base.auto_explain_threshold_in_seconds = nil
queries = Thread.current[:available_queries_for_explain] = []