diff options
author | GitLab Bot <gitlab-bot@gitlab.com> | 2020-05-15 00:07:52 +0300 |
---|---|---|
committer | GitLab Bot <gitlab-bot@gitlab.com> | 2020-05-15 00:07:52 +0300 |
commit | 67cd2904c9ebd7ba346cc92a37ac953747a3f0e5 (patch) | |
tree | ed10a6a07c43aa4167a40c39409f8e1fef1a4cce /spec/services | |
parent | 30b17460a2569734cf04dae1b2841d3654b2c0ec (diff) |
Add latest changes from gitlab-org/gitlab@master
Diffstat (limited to 'spec/services')
-rw-r--r-- | spec/services/merge_requests/refresh_service_spec.rb | 25 |
1 files changed, 25 insertions, 0 deletions
diff --git a/spec/services/merge_requests/refresh_service_spec.rb b/spec/services/merge_requests/refresh_service_spec.rb index de7b933f89d..3e252212cdb 100644 --- a/spec/services/merge_requests/refresh_service_spec.rb +++ b/spec/services/merge_requests/refresh_service_spec.rb @@ -94,6 +94,31 @@ describe MergeRequests::RefreshService do expect(@fork_build_failed_todo).to be_done end + context 'when a merge error exists' do + let(:error_message) { 'This is a merge error' } + + before do + @merge_request = create(:merge_request, + source_project: @project, + source_branch: 'feature', + target_branch: 'master', + target_project: @project, + merge_error: error_message) + end + + it 'clears merge errors when pushing to the source branch' do + expect { refresh_service.execute(@oldrev, @newrev, 'refs/heads/feature') } + .to change { @merge_request.reload.merge_error } + .from(error_message) + .to(nil) + end + + it 'does not clear merge errors when pushing to the target branch' do + expect { refresh_service.execute(@oldrev, @newrev, 'refs/heads/master') } + .not_to change { @merge_request.reload.merge_error } + end + end + it 'reloads source branch MRs memoization' do refresh_service.execute(@oldrev, @newrev, 'refs/heads/master') |