diff options
Diffstat (limited to 'spec/controllers/projects/merge_requests/drafts_controller_spec.rb')
-rw-r--r-- | spec/controllers/projects/merge_requests/drafts_controller_spec.rb | 32 |
1 files changed, 32 insertions, 0 deletions
diff --git a/spec/controllers/projects/merge_requests/drafts_controller_spec.rb b/spec/controllers/projects/merge_requests/drafts_controller_spec.rb index 222bb977beb..b9ede84157d 100644 --- a/spec/controllers/projects/merge_requests/drafts_controller_spec.rb +++ b/spec/controllers/projects/merge_requests/drafts_controller_spec.rb @@ -385,6 +385,38 @@ RSpec.describe Projects::MergeRequests::DraftsController do expect(discussion.resolved?).to eq(false) end end + + context 'publish with note' do + before do + create(:draft_note, merge_request: merge_request, author: user) + end + + context 'when feature flag is disabled' do + before do + stub_feature_flags(mr_review_submit_comment: false) + end + + it 'does not create note' do + post :publish, params: params.merge!(note: 'Hello world') + + expect(merge_request.notes.reload.size).to be(1) + end + end + + context 'when feature flag is enabled' do + it 'creates note' do + post :publish, params: params.merge!(note: 'Hello world') + + expect(merge_request.notes.reload.size).to be(2) + end + + it 'does not create note when note param is empty' do + post :publish, params: params.merge!(note: '') + + expect(merge_request.notes.reload.size).to be(1) + end + end + end end describe 'DELETE #destroy' do |