Change failure key for missing database resource to :invalid_email

This commit is contained in:
Gabe Martin-Dempesy 2012-11-19 15:49:21 -08:00
parent ffab77c35e
commit 130d684198
3 changed files with 9 additions and 7 deletions

View File

@ -18,8 +18,8 @@ en:
unauthenticated: 'You need to sign in or sign up before continuing.'
unconfirmed: 'You have to confirm your account before continuing.'
locked: 'Your account is locked.'
nonexistent: 'Invalid email or password.'
invalid: 'Invalid email or password.'
invalid_email: 'Invalid email or password.'
invalid_token: 'Invalid authentication token.'
timeout: 'Your session expired, please sign in again to continue.'
inactive: 'Your account was not activated yet.'

View File

@ -6,7 +6,7 @@ module Devise
class DatabaseAuthenticatable < Authenticatable
def authenticate!
resource = valid_password? && mapping.to.find_for_database_authentication(authentication_hash)
return fail(:nonexistent) unless resource
return fail(:invalid_email) unless resource
if validate(resource){ resource.valid_password?(password) }
resource.after_database_authentication

View File

@ -53,12 +53,14 @@ class DatabaseAuthenticationTest < ActionController::IntegrationTest
end
test 'sign in with invalid email should return to sign in form with error message' do
sign_in_as_admin do
fill_in 'email', :with => 'wrongemail@test.com'
end
store_translations :en, :devise => { :failure => { :admin => { :invalid_email => 'Invalid email address' } } } do
sign_in_as_admin do
fill_in 'email', :with => 'wrongemail@test.com'
end
assert_contain 'Invalid email or password'
assert_not warden.authenticated?(:admin)
assert_contain 'Invalid email address'
assert_not warden.authenticated?(:admin)
end
end
test 'sign in with invalid pasword should return to sign in form with error message' do