@@ -302,10 +302,26 @@ func TestUpdateUser(t *testing.T) {
302302 user = unittest .AssertExistsAndLoadBean (t , & user_model.User {ID : 2 })
303303 assert .True (t , user .KeepActivityPrivate )
304304
305+ newEmail := "new_" + user .Email
306+ user .Email = newEmail
307+ assert .NoError (t , user_model .UpdateUser (db .DefaultContext , user , true ))
308+ user = unittest .AssertExistsAndLoadBean (t , & user_model.User {ID : 2 })
309+ assert .Equal (t , newEmail , user .Email )
310+
305311 user .Email = "no mail@mail.org"
306312 assert .Error (t , user_model .UpdateUser (db .DefaultContext , user , true ))
307313}
308314
315+ func TestUpdateUserEmailAlreadyUsed (t * testing.T ) {
316+ assert .NoError (t , unittest .PrepareTestDatabase ())
317+ user2 := unittest .AssertExistsAndLoadBean (t , & user_model.User {ID : 2 })
318+ user3 := unittest .AssertExistsAndLoadBean (t , & user_model.User {ID : 3 })
319+
320+ user2 .Email = user3 .Email
321+ err := user_model .UpdateUser (db .DefaultContext , user2 , true )
322+ assert .True (t , user_model .IsErrEmailAlreadyUsed (err ))
323+ }
324+
309325func TestNewUserRedirect (t * testing.T ) {
310326 // redirect to a completely new name
311327 assert .NoError (t , unittest .PrepareTestDatabase ())
0 commit comments