diff --git a/app/views/projects/deploy_tokens/_revoke_modal.html.haml b/app/views/projects/deploy_tokens/_revoke_modal.html.haml index a67c3a0c841c656aecd49af39c3666dd688b2e34..35eacae2c2e197f8c1b9354421bc877d8e4dc57d 100644 --- a/app/views/projects/deploy_tokens/_revoke_modal.html.haml +++ b/app/views/projects/deploy_tokens/_revoke_modal.html.haml @@ -1,4 +1,4 @@ -.modal{ id: "revoke-modal-#{token.id}" } +.modal{ id: "revoke-modal-#{token.id}", tabindex: -1 } .modal-dialog .modal-content .modal-header diff --git a/changelogs/unreleased/close-revoke-deploy-token-modal-on-escape-keypress.yml b/changelogs/unreleased/close-revoke-deploy-token-modal-on-escape-keypress.yml new file mode 100644 index 0000000000000000000000000000000000000000..98316cae40681e1007cdeeb0ea5afebb3a706c52 --- /dev/null +++ b/changelogs/unreleased/close-revoke-deploy-token-modal-on-escape-keypress.yml @@ -0,0 +1,5 @@ +--- +title: Close revoke deploy token modal on escape keypress +merge_request: 20347 +author: George Tsiolis +type: changed diff --git a/spec/features/projects/settings/user_sees_revoke_deploy_token_modal_spec.rb b/spec/features/projects/settings/user_sees_revoke_deploy_token_modal_spec.rb new file mode 100644 index 0000000000000000000000000000000000000000..069704a1305b1533974b61d3abc6020faf5ecd11 --- /dev/null +++ b/spec/features/projects/settings/user_sees_revoke_deploy_token_modal_spec.rb @@ -0,0 +1,25 @@ +require 'rails_helper' + +describe 'Repository Settings > User sees revoke deploy token modal', :js do + let(:project) { create(:project, :public, :repository) } + let(:user) { project.creator } + let(:role) { :developer } + let!(:deploy_token) { create(:deploy_token, :gitlab_deploy_token, projects: [project]) } + + before do + project.add_role(user, role) + sign_in(user) + visit(project_settings_repository_path(project)) + click_link('Revoke') + end + + it 'shows the revoke deploy token modal' do + expect(page).to have_content('You are about to revoke') + end + + it 'closes the revoke deploy token modal with escape keypress' do + find('.modal.show').send_keys(:escape) + + expect(page).not_to have_content('You are about to revoke') + end +end