summaryrefslogtreecommitdiff
path: root/spec/controllers/concerns/renders_commits_spec.rb
diff options
context:
space:
mode:
Diffstat (limited to 'spec/controllers/concerns/renders_commits_spec.rb')
-rw-r--r--spec/controllers/concerns/renders_commits_spec.rb12
1 files changed, 12 insertions, 0 deletions
diff --git a/spec/controllers/concerns/renders_commits_spec.rb b/spec/controllers/concerns/renders_commits_spec.rb
index 7be5f75c19d..7b241fc29af 100644
--- a/spec/controllers/concerns/renders_commits_spec.rb
+++ b/spec/controllers/concerns/renders_commits_spec.rb
@@ -57,4 +57,16 @@ RSpec.describe RendersCommits do
end.not_to exceed_all_query_limit(control_count)
end
end
+
+ describe '.prepare_commits_for_rendering' do
+ it 'avoids N+1' do
+ control = ActiveRecord::QueryRecorder.new do
+ subject.prepare_commits_for_rendering(merge_request.commits.take(1))
+ end
+
+ expect do
+ subject.prepare_commits_for_rendering(merge_request.commits)
+ end.not_to exceed_all_query_limit(control.count)
+ end
+ end
end