app/user: fix update user error when an e-mail address already in use (#16269)

Co-authored-by: Mattermod <mattermod@users.noreply.github.com>
Этот коммит содержится в:
Ibrahim Serdar Acikgoz
2020-11-18 12:31:57 +03:00
коммит произвёл GitHub
родитель 1b7f47fdc6
Коммит 50e29cb47a
2 изменённых файлов: 41 добавлений и 23 удалений

Просмотреть файл

@@ -461,7 +461,8 @@ func TestUpdateUserEmail(t *testing.T) {
user.Email = newEmail
user3, err := th.App.UpdateUser(user, false)
assert.NotNil(t, err)
require.NotNil(t, err)
assert.Equal(t, err.Id, "store.sql_user.update.email_taken.app_error")
assert.Nil(t, user3)
})
@@ -492,6 +493,21 @@ func TestUpdateUserEmail(t *testing.T) {
assert.Nil(t, err)
assert.Equal(t, botuser2.Email, newBotEmail)
})
t.Run("NoVerificationAlreadyUsedEmail", func(t *testing.T) {
th.App.UpdateConfig(func(cfg *model.Config) {
*cfg.EmailSettings.RequireEmailVerification = false
})
user2 := th.CreateUser()
newEmail := user2.Email
user.Email = newEmail
user3, err := th.App.UpdateUser(user, false)
require.NotNil(t, err)
assert.Equal(t, err.Id, "store.sql_user.update.email_taken.app_error")
assert.Nil(t, user3)
})
}
func getUserFromDB(a *App, id string, t *testing.T) *model.User {