Commit 16029029 authored by Rémy Coutable's avatar Rémy Coutable

Merge branch 'sh-speed-up-refresh-service' into 'master'

Speed up MergeRequest::RefreshService spec by combining examples

See merge request !9801
parents b51e4cb3 ccaf66b8
...@@ -58,16 +58,16 @@ describe MergeRequests::RefreshService, services: true do ...@@ -58,16 +58,16 @@ describe MergeRequests::RefreshService, services: true do
it 'executes hooks with update action' do it 'executes hooks with update action' do
expect(refresh_service).to have_received(:execute_hooks). expect(refresh_service).to have_received(:execute_hooks).
with(@merge_request, 'update', @oldrev) with(@merge_request, 'update', @oldrev)
end
it { expect(@merge_request.notes).not_to be_empty } expect(@merge_request.notes).not_to be_empty
it { expect(@merge_request).to be_open } expect(@merge_request).to be_open
it { expect(@merge_request.merge_when_pipeline_succeeds).to be_falsey } expect(@merge_request.merge_when_pipeline_succeeds).to be_falsey
it { expect(@merge_request.diff_head_sha).to eq(@newrev) } expect(@merge_request.diff_head_sha).to eq(@newrev)
it { expect(@fork_merge_request).to be_open } expect(@fork_merge_request).to be_open
it { expect(@fork_merge_request.notes).to be_empty } expect(@fork_merge_request.notes).to be_empty
it { expect(@build_failed_todo).to be_done } expect(@build_failed_todo).to be_done
it { expect(@fork_build_failed_todo).to be_done } expect(@fork_build_failed_todo).to be_done
end
end end
context 'push to origin repo target branch' do context 'push to origin repo target branch' do
...@@ -76,12 +76,14 @@ describe MergeRequests::RefreshService, services: true do ...@@ -76,12 +76,14 @@ describe MergeRequests::RefreshService, services: true do
reload_mrs reload_mrs
end end
it { expect(@merge_request.notes.last.note).to include('merged') } it 'updates the merge state' do
it { expect(@merge_request).to be_merged } expect(@merge_request.notes.last.note).to include('merged')
it { expect(@fork_merge_request).to be_merged } expect(@merge_request).to be_merged
it { expect(@fork_merge_request.notes.last.note).to include('merged') } expect(@fork_merge_request).to be_merged
it { expect(@build_failed_todo).to be_done } expect(@fork_merge_request.notes.last.note).to include('merged')
it { expect(@fork_build_failed_todo).to be_done } expect(@build_failed_todo).to be_done
expect(@fork_build_failed_todo).to be_done
end
end end
context 'manual merge of source branch' do context 'manual merge of source branch' do
...@@ -95,13 +97,15 @@ describe MergeRequests::RefreshService, services: true do ...@@ -95,13 +97,15 @@ describe MergeRequests::RefreshService, services: true do
reload_mrs reload_mrs
end end
it { expect(@merge_request.notes.last.note).to include('merged') } it 'updates the merge state' do
it { expect(@merge_request).to be_merged } expect(@merge_request.notes.last.note).to include('merged')
it { expect(@merge_request.diffs.size).to be > 0 } expect(@merge_request).to be_merged
it { expect(@fork_merge_request).to be_merged } expect(@merge_request.diffs.size).to be > 0
it { expect(@fork_merge_request.notes.last.note).to include('merged') } expect(@fork_merge_request).to be_merged
it { expect(@build_failed_todo).to be_done } expect(@fork_merge_request.notes.last.note).to include('merged')
it { expect(@fork_build_failed_todo).to be_done } expect(@build_failed_todo).to be_done
expect(@fork_build_failed_todo).to be_done
end
end end
context 'push to fork repo source branch' do context 'push to fork repo source branch' do
...@@ -117,14 +121,14 @@ describe MergeRequests::RefreshService, services: true do ...@@ -117,14 +121,14 @@ describe MergeRequests::RefreshService, services: true do
it 'executes hooks with update action' do it 'executes hooks with update action' do
expect(refresh_service).to have_received(:execute_hooks). expect(refresh_service).to have_received(:execute_hooks).
with(@fork_merge_request, 'update', @oldrev) with(@fork_merge_request, 'update', @oldrev)
end
it { expect(@merge_request.notes).to be_empty } expect(@merge_request.notes).to be_empty
it { expect(@merge_request).to be_open } expect(@merge_request).to be_open
it { expect(@fork_merge_request.notes.last.note).to include('added 28 commits') } expect(@fork_merge_request.notes.last.note).to include('added 28 commits')
it { expect(@fork_merge_request).to be_open } expect(@fork_merge_request).to be_open
it { expect(@build_failed_todo).to be_pending } expect(@build_failed_todo).to be_pending
it { expect(@fork_build_failed_todo).to be_pending } expect(@fork_build_failed_todo).to be_pending
end
end end
context 'closed fork merge request' do context 'closed fork merge request' do
...@@ -139,12 +143,14 @@ describe MergeRequests::RefreshService, services: true do ...@@ -139,12 +143,14 @@ describe MergeRequests::RefreshService, services: true do
expect(refresh_service).not_to have_received(:execute_hooks) expect(refresh_service).not_to have_received(:execute_hooks)
end end
it { expect(@merge_request.notes).to be_empty } it 'updates merge request to closed state' do
it { expect(@merge_request).to be_open } expect(@merge_request.notes).to be_empty
it { expect(@fork_merge_request.notes).to be_empty } expect(@merge_request).to be_open
it { expect(@fork_merge_request).to be_closed } expect(@fork_merge_request.notes).to be_empty
it { expect(@build_failed_todo).to be_pending } expect(@fork_merge_request).to be_closed
it { expect(@fork_build_failed_todo).to be_pending } expect(@build_failed_todo).to be_pending
expect(@fork_build_failed_todo).to be_pending
end
end end
end end
...@@ -155,12 +161,14 @@ describe MergeRequests::RefreshService, services: true do ...@@ -155,12 +161,14 @@ describe MergeRequests::RefreshService, services: true do
reload_mrs reload_mrs
end end
it { expect(@merge_request.notes).to be_empty } it 'updates the merge request state' do
it { expect(@merge_request).to be_open } expect(@merge_request.notes).to be_empty
it { expect(@fork_merge_request.notes).to be_empty } expect(@merge_request).to be_open
it { expect(@fork_merge_request).to be_open } expect(@fork_merge_request.notes).to be_empty
it { expect(@build_failed_todo).to be_pending } expect(@fork_merge_request).to be_open
it { expect(@fork_build_failed_todo).to be_pending } expect(@build_failed_todo).to be_pending
expect(@fork_build_failed_todo).to be_pending
end
end end
describe 'merge request diff' do describe 'merge request diff' do
...@@ -179,12 +187,14 @@ describe MergeRequests::RefreshService, services: true do ...@@ -179,12 +187,14 @@ describe MergeRequests::RefreshService, services: true do
reload_mrs reload_mrs
end end
it { expect(@merge_request.notes.last.note).to include('merged') } it 'updates the merge request state' do
it { expect(@merge_request).to be_merged } expect(@merge_request.notes.last.note).to include('merged')
it { expect(@fork_merge_request).to be_open } expect(@merge_request).to be_merged
it { expect(@fork_merge_request.notes).to be_empty } expect(@fork_merge_request).to be_open
it { expect(@build_failed_todo).to be_done } expect(@fork_merge_request.notes).to be_empty
it { expect(@fork_build_failed_todo).to be_done } expect(@build_failed_todo).to be_done
expect(@fork_build_failed_todo).to be_done
end
end end
context 'push new branch that exists in a merge request' do context 'push new branch that exists in a merge request' do
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment