diff options
author | GitLab Bot <gitlab-bot@gitlab.com> | 2020-01-09 15:07:42 +0000 |
---|---|---|
committer | GitLab Bot <gitlab-bot@gitlab.com> | 2020-01-09 15:07:42 +0000 |
commit | 263f926c770163788f78af03ab69689c94f57360 (patch) | |
tree | 4e1027e596629106d25fa461a1cf3d613749d279 /spec/requests/api/deployments_spec.rb | |
parent | cddaddb86bf6d4d277d206c42a9138a2d660ea56 (diff) | |
download | gitlab-ce-263f926c770163788f78af03ab69689c94f57360.tar.gz |
Add latest changes from gitlab-org/gitlab@master
Diffstat (limited to 'spec/requests/api/deployments_spec.rb')
-rw-r--r-- | spec/requests/api/deployments_spec.rb | 32 |
1 files changed, 10 insertions, 22 deletions
diff --git a/spec/requests/api/deployments_spec.rb b/spec/requests/api/deployments_spec.rb index 96b14339469..7e184cea3c0 100644 --- a/spec/requests/api/deployments_spec.rb +++ b/spec/requests/api/deployments_spec.rb @@ -346,37 +346,25 @@ describe API::Deployments do context 'prevent N + 1 queries' do context 'when the endpoint returns multiple records' do let(:project) { create(:project, :repository) } + let!(:deployment) { create(:deployment, :success, project: project) } - def create_record - create(:deployment, :success, project: project) - end - - def request_with_query_count - ActiveRecord::QueryRecorder.new { trigger_request }.count - end - - def trigger_request - get api("/projects/#{project.id}/deployments?order_by=updated_at&sort=asc", user) - end + subject { get api("/projects/#{project.id}/deployments?order_by=updated_at&sort=asc", user) } - before do - create_record - end - - it 'succeeds' do - trigger_request + it 'succeeds', :aggregate_failures do + subject expect(response).to have_gitlab_http_status(200) - expect(json_response.size).to eq(1) end - it 'does not increase the query count' do - 10.times { create_record } + context 'with 10 more records' do + it 'does not increase the query count', :aggregate_failures do + create_list(:deployment, 10, :success, project: project) - expect { trigger_request }.not_to be_n_plus_1_query + expect { subject }.not_to be_n_plus_1_query - expect(json_response.size).to eq(11) + expect(json_response.size).to eq(11) + end end end end |