diff options
Diffstat (limited to 'spec/controllers/concerns/renders_commits_spec.rb')
-rw-r--r-- | spec/controllers/concerns/renders_commits_spec.rb | 12 |
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 |