diff options
author | Jarka Kadlecova <kadlecovaj@gmail.com> | 2016-12-21 11:32:37 +0100 |
---|---|---|
committer | Jarka Kadlecova <jarka@gitlab.com> | 2017-01-11 08:48:07 -0500 |
commit | aa934c7469372cac7b8cd10b49761d90d8e367fa (patch) | |
tree | 23030a57551efe5340fa44b65241911f6cd0ab44 /spec | |
parent | 7ab3dd4b302a85c1b005e9ef290ebac631cda673 (diff) | |
download | gitlab-ce-aa934c7469372cac7b8cd10b49761d90d8e367fa.tar.gz |
refresh merge widget after using /merge command
Diffstat (limited to 'spec')
-rw-r--r-- | spec/controllers/projects/merge_requests_controller_spec.rb | 52 |
1 files changed, 52 insertions, 0 deletions
diff --git a/spec/controllers/projects/merge_requests_controller_spec.rb b/spec/controllers/projects/merge_requests_controller_spec.rb index 2a411d78395..c6a38863cf5 100644 --- a/spec/controllers/projects/merge_requests_controller_spec.rb +++ b/spec/controllers/projects/merge_requests_controller_spec.rb @@ -1048,4 +1048,56 @@ describe Projects::MergeRequestsController do end end end + + describe 'GET merge_widget_refresh' do + let(:params) do + { + namespace_id: project.namespace.path, + project_id: project.path, + id: merge_request.iid, + format: :raw + } + end + + before do + project.team << [user, :developer] + xhr :get, :merge_widget_refresh, params + end + + context 'when merge in progress' do + let(:merge_request) { create(:merge_request, source_project: project, in_progress_merge_commit_sha: 'sha') } + + it 'returns an OK response' do + expect(response).to have_http_status(:ok) + end + + it 'returns :success' do + expect(assigns(:status)).to eq(:success) + end + end + + context 'when waiting for build' do + let(:merge_request) { create(:merge_request, source_project: project, merge_when_build_succeeds: true, merge_user: user) } + + it 'returns an OK response' do + expect(response).to have_http_status(:ok) + end + + it 'returns :merge_when_build_succeeds' do + expect(assigns(:status)).to eq(:merge_when_build_succeeds) + end + end + + context 'when no special status for MR' do + let(:merge_request) { create(:merge_request, source_project: project) } + + it 'returns an OK response' do + expect(response).to have_http_status(:ok) + end + + it 'returns nil' do + expect(assigns(:status)).to be_nil + end + end + end end |