diff options
author | Sean McGivern <sean@mcgivern.me.uk> | 2017-08-08 15:37:35 +0000 |
---|---|---|
committer | Simon Knox <psimyn@gmail.com> | 2017-08-09 12:16:12 +1000 |
commit | 9f940c3c91b7d2024a047585f96517834b49bd02 (patch) | |
tree | 30848fa15e678ed95f0c36362eb622abda6d17aa /spec | |
parent | ab69aafb686cb1d6882888684a8af7e1ffeb0a4a (diff) | |
download | gitlab-ce-9f940c3c91b7d2024a047585f96517834b49bd02.tar.gz |
Merge branch '36169-fix-master' into 'master'
Fix a broken Events API spec
See merge request !13381
Diffstat (limited to 'spec')
-rw-r--r-- | spec/requests/api/events_spec.rb | 21 |
1 files changed, 8 insertions, 13 deletions
diff --git a/spec/requests/api/events_spec.rb b/spec/requests/api/events_spec.rb index 48db964d782..f1a26b6ce6c 100644 --- a/spec/requests/api/events_spec.rb +++ b/spec/requests/api/events_spec.rb @@ -140,33 +140,28 @@ describe API::Events do end context 'when exists some events' do + let(:merge_request1) { create(:merge_request, :closed, author: user, assignee: user, source_project: private_project, title: 'Test') } + let(:merge_request2) { create(:merge_request, :closed, author: user, assignee: user, source_project: private_project, title: 'Test') } + before do - create_event(note1) - create_event(note2) create_event(merge_request1) end - let(:note1) { create(:note_on_merge_request, project: private_project, author: user) } - let(:note2) { create(:note_on_issue, project: private_project, author: user) } - let(:merge_request1) { create(:merge_request, state: 'closed', author: user, assignee: user, source_project: private_project, title: 'Test') } - let(:merge_request2) { create(:merge_request, state: 'closed', author: user, assignee: user, source_project: private_project, title: 'Test') } - it 'avoids N+1 queries' do control_count = ActiveRecord::QueryRecorder.new do - get api("/projects/#{private_project.id}/events", user) + get api("/projects/#{private_project.id}/events", user), target_type: :merge_request end.count create_event(merge_request2) expect do - get api("/projects/#{private_project.id}/events", user) + get api("/projects/#{private_project.id}/events", user), target_type: :merge_request end.not_to exceed_query_limit(control_count) - expect(response).to have_http_status(200) + expect(response).to have_gitlab_http_status(200) expect(response).to include_pagination_headers - expect(json_response).to be_an Array - expect(json_response[0]).to include('target_type' => 'MergeRequest', 'target_id' => merge_request2.id) - expect(json_response[1]).to include('target_type' => 'MergeRequest', 'target_id' => merge_request1.id) + expect(json_response.size).to eq(2) + expect(json_response.map { |r| r['target_id'] }).to match_array([merge_request1.id, merge_request2.id]) end def create_event(target) |