1
0
Fork 0
mirror of https://github.com/heartcombo/devise.git synced 2022-11-09 12:18:31 -05:00

set_flash_message: Added conditional to make certain flash entries are not set if message is blank.

Signed-off-by: José Valim <jose.valim@gmail.com>
This commit is contained in:
Steve Ross 2010-11-10 11:04:06 -08:00 committed by José Valim
parent d8016ea3fd
commit 4a8f9a9ba8
2 changed files with 18 additions and 1 deletions

View file

@ -102,7 +102,8 @@ module Devise
options[:scope] = "devise.#{controller_name}"
options[:default] = Array(options[:default]).unshift(kind.to_sym)
options[:resource_name] = resource_name
flash[key] = I18n.t("#{resource_name}.#{kind}", options)
message = I18n.t("#{resource_name}.#{kind}", options)
flash[key] = message.blank? ? nil : message
end
def clean_up_passwords(object) #:nodoc:

View file

@ -53,4 +53,20 @@ class HelpersTest < ActionController::TestCase
test 'is a devise controller' do
assert @controller.devise_controller?
end
test 'does not issue blank flash messages' do
MyController.send(:public, :set_flash_message)
I18n.stubs(:t).returns(' ')
@controller.set_flash_message :notice, :send_instructions
assert flash[:notice].nil?
MyController.send(:protected, :set_flash_message)
end
test 'issues non-blank flash messages normally' do
MyController.send(:public, :set_flash_message)
I18n.stubs(:t).returns('non-blank')
@controller.set_flash_message :notice, :send_instructions
assert flash[:notice] == 'non-blank'
MyController.send(:protected, :set_flash_message)
end
end