summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorEric Eastwood <contact@ericeastwood.com>2017-11-29 16:04:41 -0600
committerEric Eastwood <contact@ericeastwood.com>2017-11-29 16:04:41 -0600
commited3fcdd09bed143b0397d8dd9aaf7b9350597920 (patch)
treec112cd6f28b76d27ddce2d121be24375200b98d8
parentfbe8dfb3008a0502fbc6234a169851a70707b7b6 (diff)
downloadgitlab-ce-40671-fix-empty-blank-flash-messages.tar.gz
Remove blank flash messages caused by nil40671-fix-empty-blank-flash-messages
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`
-rw-r--r--app/views/layouts/_flash.html.haml8
-rw-r--r--spec/features/logout_spec.rb22
2 files changed, 27 insertions, 3 deletions
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