diff options
Diffstat (limited to 'spec/features/projects/services/user_activates_youtrack_spec.rb')
-rw-r--r-- | spec/features/projects/services/user_activates_youtrack_spec.rb | 91 |
1 files changed, 0 insertions, 91 deletions
diff --git a/spec/features/projects/services/user_activates_youtrack_spec.rb b/spec/features/projects/services/user_activates_youtrack_spec.rb deleted file mode 100644 index 26734766ff0..00000000000 --- a/spec/features/projects/services/user_activates_youtrack_spec.rb +++ /dev/null @@ -1,91 +0,0 @@ -# frozen_string_literal: true - -require 'spec_helper' - -describe 'User activates issue tracker', :js do - let(:user) { create(:user) } - let(:project) { create(:project) } - - let(:url) { 'http://tracker.example.com' } - - def fill_form(disabled: false) - find('input[name="service[active]"] + button').click if disabled - - fill_in 'service_project_url', with: url - fill_in 'service_issues_url', with: "#{url}/:id" - end - - before do - project.add_maintainer(user) - sign_in(user) - - visit project_settings_integrations_path(project) - end - - shared_examples 'external issue tracker activation' do |tracker:| - describe 'user sets and activates the Service' do - context 'when the connection test succeeds' do - before do - stub_request(:head, url).to_return(headers: { 'Content-Type' => 'application/json' }) - - click_link(tracker) - fill_form - click_button('Test settings and save changes') - wait_for_requests - end - - it 'activates the service' do - expect(page).to have_content("#{tracker} activated.") - expect(current_path).to eq(project_settings_integrations_path(project)) - end - - it 'shows the link in the menu' do - page.within('.nav-sidebar') do - expect(page).to have_link(tracker, href: url) - end - end - end - - context 'when the connection test fails' do - it 'activates the service' do - stub_request(:head, url).to_raise(Gitlab::HTTP::Error) - - click_link(tracker) - fill_form - click_button('Test settings and save changes') - wait_for_requests - - expect(find('.flash-container-page')).to have_content 'Test failed.' - expect(find('.flash-container-page')).to have_content 'Save anyway' - - find('.flash-alert .flash-action').click - wait_for_requests - - expect(page).to have_content("#{tracker} activated.") - expect(current_path).to eq(project_settings_integrations_path(project)) - end - end - end - - describe 'user disables the service' do - before do - click_link(tracker) - fill_form(disabled: true) - click_button('Save changes') - end - - it 'saves but does not activate the service' do - expect(page).to have_content("#{tracker} settings saved, but not activated.") - expect(current_path).to eq(project_settings_integrations_path(project)) - end - - it 'does not show the external tracker link in the menu' do - page.within('.nav-sidebar') do - expect(page).not_to have_link(tracker, href: url) - end - end - end - end - - it_behaves_like 'external issue tracker activation', tracker: 'YouTrack' -end |