Merge branch '5905-duplicate-email-errors' into 'master'
Only show one error message for an invalid email Changes it to only validate the notification_email format if it's different from email. Closes #5905 See merge request !7158
This commit is contained in:
commit
04c7c8d8bb
|
|
@ -11,6 +11,7 @@ Please view this file on the master branch, on stable branches it's out of date.
|
|||
- Fix HipChat notifications rendering (airatshigapov, eisnerd)
|
||||
- Refactor Jira service to use jira-ruby gem
|
||||
- Add hover to trash icon in notes !7008 (blackst0ne)
|
||||
- Only show one error message for an invalid email !5905 (lycoperdon)
|
||||
- Fix sidekiq stats in admin area (blackst0ne)
|
||||
- API: Fix booleans not recognized as such when using the `to_boolean` helper
|
||||
- Removed delete branch tooltip !6954
|
||||
|
|
|
|||
|
|
@ -93,8 +93,10 @@ class User < ActiveRecord::Base
|
|||
#
|
||||
# Validations
|
||||
#
|
||||
# Note: devise :validatable above adds validations for :email and :password
|
||||
validates :name, presence: true
|
||||
validates :notification_email, presence: true, email: true
|
||||
validates :notification_email, presence: true
|
||||
validates :notification_email, email: true, if: ->(user) { user.notification_email != user.email }
|
||||
validates :public_email, presence: true, uniqueness: true, email: true, allow_blank: true
|
||||
validates :bio, length: { maximum: 255 }, allow_blank: true
|
||||
validates :projects_limit, presence: true, numericality: { greater_than_or_equal_to: 0 }
|
||||
|
|
|
|||
|
|
@ -114,6 +114,17 @@ describe Admin::UsersController do
|
|||
end
|
||||
end
|
||||
|
||||
describe 'POST create' do
|
||||
it 'creates the user' do
|
||||
expect{ post :create, user: attributes_for(:user) }.to change{ User.count }.by(1)
|
||||
end
|
||||
|
||||
it 'shows only one error message for an invalid email' do
|
||||
post :create, user: attributes_for(:user, email: 'bogus')
|
||||
expect(assigns[:user].errors).to contain_exactly("Email is invalid")
|
||||
end
|
||||
end
|
||||
|
||||
describe 'POST update' do
|
||||
context 'when the password has changed' do
|
||||
def update_password(user, password, password_confirmation = nil)
|
||||
|
|
|
|||
Loading…
Reference in New Issue