From ed3fcdd09bed143b0397d8dd9aaf7b9350597920 Mon Sep 17 00:00:00 2001 From: Eric Eastwood Date: Wed, 29 Nov 2017 16:04:41 -0600 Subject: [PATCH] Remove blank flash messages caused by nil Fix https://gitlab.com/gitlab-org/gitlab-ce/issues/40671 See https://gitlab.com/gitlab-org/gitlab-ce/blob/f7254a4060b30e3134c6cf932eaba0fc8e249e9a/app/controllers/sessions_controller.rb#L42 for an example of where we set `flash[:notice] = nil` --- app/views/layouts/_flash.html.haml | 8 +++++--- spec/features/logout_spec.rb | 22 ++++++++++++++++++++++ 2 files changed, 27 insertions(+), 3 deletions(-) create mode 100644 spec/features/logout_spec.rb diff --git a/app/views/layouts/_flash.html.haml b/app/views/layouts/_flash.html.haml index 1db32379df3..05ddd0ec733 100644 --- a/app/views/layouts/_flash.html.haml +++ b/app/views/layouts/_flash.html.haml @@ -1,6 +1,8 @@ .flash-container.flash-container-page -# We currently only support `alert`, `notice`, `success` - flash.each do |key, value| - %div{ class: "flash-#{key}" } - %div{ class: (container_class) } - %span= value + -# Don't show a flash message if the message is nil + - if value + %div{ class: "flash-#{key}" } + %div{ class: (container_class) } + %span= value diff --git a/spec/features/logout_spec.rb b/spec/features/logout_spec.rb new file mode 100644 index 00000000000..635729efa53 --- /dev/null +++ b/spec/features/logout_spec.rb @@ -0,0 +1,22 @@ +require 'spec_helper' + +describe 'Logout/Sign out', :js do + let(:user) { create(:user) } + + before do + sign_in(user) + visit root_path + end + + it 'sign out redirects to sign in page' do + gitlab_sign_out + + expect(current_path).to eq new_user_session_path + end + + it 'sign out does not show signed out flash notice' do + gitlab_sign_out + + expect(page).not_to have_selector('.flash-notice') + end +end -- GitLab