MM-19980 Allowing user delete command to delete bot accounts. (#13155)

Automatic Merge
This commit is contained in:
Christopher Speller
2019-11-27 12:36:51 -08:00
committed by mattermod
parent 98bc2b1077
commit 3cb3d874b8
2 changed files with 35 additions and 2 deletions

View File

@@ -724,8 +724,14 @@ func deleteUserCmdF(command *cobra.Command, args []string) error {
return errors.New("Unable to find user '" + args[i] + "'")
}
if err := a.PermanentDeleteUser(user); err != nil {
return err
if user.IsBot {
if err := a.PermanentDeleteBot(user.Id); err != nil {
return err
}
} else {
if err := a.PermanentDeleteUser(user); err != nil {
return err
}
}
}

View File

@@ -109,6 +109,33 @@ func TestChangeUserEmail(t *testing.T) {
}
func TestDeleteUserBotUser(t *testing.T) {
th := Setup().InitBasic()
defer th.TearDown()
th.CheckCommand(t, "user", "delete", th.BasicUser.Username, "--confirm")
_, err := th.App.Srv.Store.User().Get(th.BasicUser.Id)
require.Error(t, err)
// Make a bot
bot := &model.Bot{
Username: "bottodelete",
Description: "Delete me!",
OwnerId: model.NewId(),
}
user, err := th.App.Srv.Store.User().Save(model.UserFromBot(bot))
require.Nil(t, err)
bot.UserId = user.Id
bot, err = th.App.Srv.Store.Bot().Save(bot)
require.Nil(t, err)
th.CheckCommand(t, "user", "delete", bot.Username, "--confirm")
_, err = th.App.Srv.Store.User().Get(user.Id)
require.Error(t, err)
_, err = th.App.Srv.Store.Bot().Get(user.Id, true)
require.Error(t, err)
}
func TestConvertUser(t *testing.T) {
th := Setup().InitBasic()
defer th.TearDown()