summaryrefslogtreecommitdiffstats
path: root/models/user/user_test.go
diff options
context:
space:
mode:
Diffstat (limited to 'models/user/user_test.go')
-rw-r--r--models/user/user_test.go16
1 files changed, 16 insertions, 0 deletions
diff --git a/models/user/user_test.go b/models/user/user_test.go
index 848c978a9b..678d6c186c 100644
--- a/models/user/user_test.go
+++ b/models/user/user_test.go
@@ -302,10 +302,26 @@ func TestUpdateUser(t *testing.T) {
user = unittest.AssertExistsAndLoadBean(t, &user_model.User{ID: 2})
assert.True(t, user.KeepActivityPrivate)
+ newEmail := "new_" + user.Email
+ user.Email = newEmail
+ assert.NoError(t, user_model.UpdateUser(db.DefaultContext, user, true))
+ user = unittest.AssertExistsAndLoadBean(t, &user_model.User{ID: 2})
+ assert.Equal(t, newEmail, user.Email)
+
user.Email = "no mail@mail.org"
assert.Error(t, user_model.UpdateUser(db.DefaultContext, user, true))
}
+func TestUpdateUserEmailAlreadyUsed(t *testing.T) {
+ assert.NoError(t, unittest.PrepareTestDatabase())
+ user2 := unittest.AssertExistsAndLoadBean(t, &user_model.User{ID: 2})
+ user3 := unittest.AssertExistsAndLoadBean(t, &user_model.User{ID: 3})
+
+ user2.Email = user3.Email
+ err := user_model.UpdateUser(db.DefaultContext, user2, true)
+ assert.True(t, user_model.IsErrEmailAlreadyUsed(err))
+}
+
func TestNewUserRedirect(t *testing.T) {
// redirect to a completely new name
assert.NoError(t, unittest.PrepareTestDatabase())