diff options
Diffstat (limited to 'app')
-rw-r--r-- | app/team.go | 4 | ||||
-rw-r--r-- | app/team_test.go | 20 |
2 files changed, 23 insertions, 1 deletions
diff --git a/app/team.go b/app/team.go index e4a71d7d5..b479ed134 100644 --- a/app/team.go +++ b/app/team.go @@ -735,7 +735,9 @@ func PermanentDeleteTeam(team *model.Team) *model.AppError { } if result := <-Srv.Store.Channel().GetTeamChannels(team.Id); result.Err != nil { - return result.Err + if result.Err.Id != "store.sql_channel.get_channels.not_found.app_error" { + return result.Err + } } else { channels := result.Data.(*model.ChannelList) for _, c := range *channels { diff --git a/app/team_test.go b/app/team_test.go index a410d6652..4e0ea82f5 100644 --- a/app/team_test.go +++ b/app/team_test.go @@ -152,4 +152,24 @@ func TestPermanentDeleteTeam(t *testing.T) { if command, err = GetCommand(command.Id); command != nil || err == nil { t.Fatal("command wasn't deleted") } + + // Test deleting a team with no channels. + team = th.CreateTeam() + defer func() { + PermanentDeleteTeam(team) + }() + + if channels, err := GetPublicChannelsForTeam(team.Id, 0, 1000); err != nil { + t.Fatal(err) + } else { + for _, channel := range *channels { + if err2 := PermanentDeleteChannel(channel); err2 != nil { + t.Fatal(err) + } + } + } + + if err := PermanentDeleteTeam(team); err != nil { + t.Fatal(err) + } } |