aboutsummaryrefslogtreecommitdiffstats
path: root/actionview
diff options
context:
space:
mode:
authorst0012 <stan001212@gmail.com>2019-07-28 14:24:44 +0800
committerst0012 <stan001212@gmail.com>2019-07-28 14:24:47 +0800
commite289c8d7759716c88b398e7bb54d1babc9006688 (patch)
tree599da7cb9c71bfed64ec5109da52f887f5b67391 /actionview
parentd1ffe59ab5fd6e811833c127d43b32e87b5d7131 (diff)
downloadrails-e289c8d7759716c88b398e7bb54d1babc9006688.tar.gz
rails-e289c8d7759716c88b398e7bb54d1babc9006688.tar.bz2
rails-e289c8d7759716c88b398e7bb54d1babc9006688.zip
Assert query counts in cache relation test
This is to guard the change in #35982
Diffstat (limited to 'actionview')
-rw-r--r--actionview/test/activerecord/relation_cache_test.rb17
1 files changed, 16 insertions, 1 deletions
diff --git a/actionview/test/activerecord/relation_cache_test.rb b/actionview/test/activerecord/relation_cache_test.rb
index 6fe83dcb9a..26f3bfbcbc 100644
--- a/actionview/test/activerecord/relation_cache_test.rb
+++ b/actionview/test/activerecord/relation_cache_test.rb
@@ -17,9 +17,24 @@ class RelationCacheTest < ActionView::TestCase
end
def test_cache_relation_other
- cache(Project.all) { concat("Hello World") }
+ assert_queries(1) do
+ cache(Project.all) { concat("Hello World") }
+ end
assert_equal "Hello World", controller.cache_store.read("views/test/hello_world:fa9482a68ce25bf7589b8eddad72f736/projects-#{Project.count}")
end
def view_cache_dependencies; []; end
+
+ def assert_queries(num)
+ ActiveRecord::Base.connection.materialize_transactions
+ count = 0
+
+ ActiveSupport::Notifications.subscribe("sql.active_record") do |_name, _start, _finish, _id, payload|
+ count += 1 unless ["SCHEMA", "TRANSACTION"].include? payload[:name]
+ end
+
+ result = yield
+ assert_equal num, count, "#{count} instead of #{num} queries were executed."
+ result
+ end
end