From da31584deafb8346b7889a7e98c534a08f57f5d8 Mon Sep 17 00:00:00 2001 From: blackst0ne Date: Mon, 11 Sep 2017 15:42:13 +1100 Subject: Replace the 'project/merge_requests/accept.feature' spinach test with an rspec analog --- .../user_accepts_merge_request_spec.rb | 65 ++++++++++++++++++++++ 1 file changed, 65 insertions(+) create mode 100644 spec/features/projects/merge_requests/user_accepts_merge_request_spec.rb (limited to 'spec/features') diff --git a/spec/features/projects/merge_requests/user_accepts_merge_request_spec.rb b/spec/features/projects/merge_requests/user_accepts_merge_request_spec.rb new file mode 100644 index 00000000000..6c0b5e279d5 --- /dev/null +++ b/spec/features/projects/merge_requests/user_accepts_merge_request_spec.rb @@ -0,0 +1,65 @@ +require 'spec_helper' + +describe 'User accepts a merge request', :js do + let(:merge_request) { create(:merge_request, :with_diffs, :simple, source_project: project) } + let(:project) { create(:project, :public, :repository) } + let(:user) { create(:user) } + + before do + project.add_developer(user) + sign_in(user) + end + + context 'with removing the source branch' do + before do + visit(merge_request_path(merge_request)) + end + + it 'accepts a merge request' do + check('Remove source branch') + click_button('Merge') + + expect(page).to have_content('The changes were merged into') + expect(page).not_to have_selector('.js-remove-branch-button') + + # Wait for View Resource requests to complete so they don't blow up if they are + # only handled after `DatabaseCleaner` has already run. + wait_for_requests + end + end + + context 'without removing the source branch' do + before do + visit(merge_request_path(merge_request)) + end + + it 'accepts a merge request' do + click_button('Merge') + + expect(page).to have_content('The changes were merged into') + expect(page).to have_selector('.js-remove-branch-button') + + # Wait for View Resource requests to complete so they don't blow up if they are + # only handled after `DatabaseCleaner` has already run + wait_for_requests + end + end + + context 'when a URL has an anchor' do + before do + visit(merge_request_path(merge_request, anchor: 'note_123')) + end + + it 'accepts a merge request' do + check('Remove source branch') + click_button('Merge') + + expect(page).to have_content('The changes were merged into') + expect(page).not_to have_selector('.js-remove-branch-button') + + # Wait for View Resource requests to complete so they don't blow up if they are + # only handled after `DatabaseCleaner` has already run + wait_for_requests + end + end +end -- cgit v1.2.1