From 0251ef1c15ee9c3f3fc4298829ad9e1c07d767bd Mon Sep 17 00:00:00 2001 From: Sean McGivern Date: Tue, 9 May 2017 12:10:37 +0100 Subject: Enable RequestStore for pipelines controller N+1 spec EE performs a license check (which is cached in the RequestStore) as part of checking if a user can view a build. Using RequestStore gives a more accurate result of what will happen in production. --- spec/controllers/projects/pipelines_controller_spec.rb | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/spec/controllers/projects/pipelines_controller_spec.rb b/spec/controllers/projects/pipelines_controller_spec.rb index fb4a4721a58..244f47f4c90 100644 --- a/spec/controllers/projects/pipelines_controller_spec.rb +++ b/spec/controllers/projects/pipelines_controller_spec.rb @@ -50,6 +50,15 @@ describe Projects::PipelinesController do end context 'when the pipeline has multiple jobs' do + before do + RequestStore.begin! + end + + after do + RequestStore.end! + RequestStore.clear! + end + it 'does not perform N + 1 queries' do control_count = ActiveRecord::QueryRecorder.new { get_pipeline_json }.count -- cgit v1.2.1