diff options
author | George Goldberg <george@gberg.me> | 2016-12-22 20:44:37 +0000 |
---|---|---|
committer | Christopher Speller <crspeller@gmail.com> | 2016-12-22 15:44:37 -0500 |
commit | ca61b4bed94ea98530bf4f1b2f7585fe86ef80cd (patch) | |
tree | b9f9c42a8ad6d125b7d21adcd386a7f7c0d9a73a /api/apitestlib.go | |
parent | 03e1d0aac3746c89d56284e5eea52b7a363d0e05 (diff) | |
download | chat-ca61b4bed94ea98530bf4f1b2f7585fe86ef80cd.tar.gz chat-ca61b4bed94ea98530bf4f1b2f7585fe86ef80cd.tar.bz2 chat-ca61b4bed94ea98530bf4f1b2f7585fe86ef80cd.zip |
PLT-5080 (Server): Channel-Admin level permissions (#4874)
Adds permissions for manage/delete public/private channels at the
Channel Admin level.
Diffstat (limited to 'api/apitestlib.go')
-rw-r--r-- | api/apitestlib.go | 36 |
1 files changed, 36 insertions, 0 deletions
diff --git a/api/apitestlib.go b/api/apitestlib.go index f11613a90..8fb030488 100644 --- a/api/apitestlib.go +++ b/api/apitestlib.go @@ -171,6 +171,42 @@ func UpdateUserToTeamAdmin(user *model.User, team *model.Team) { utils.EnableDebugLogForTest() } +func MakeUserChannelAdmin(user *model.User, channel *model.Channel) { + utils.DisableDebugLogForTest() + + if cmr := <-Srv.Store.Channel().GetMember(channel.Id, user.Id); cmr.Err == nil { + cm := cmr.Data.(model.ChannelMember) + cm.Roles = "channel_admin channel_user" + if sr := <-Srv.Store.Channel().UpdateMember(&cm); sr.Err != nil { + utils.EnableDebugLogForTest() + panic(sr.Err) + } + } else { + utils.EnableDebugLogForTest() + panic(cmr.Err) + } + + utils.EnableDebugLogForTest() +} + +func MakeUserChannelUser(user *model.User, channel *model.Channel) { + utils.DisableDebugLogForTest() + + if cmr := <-Srv.Store.Channel().GetMember(channel.Id, user.Id); cmr.Err == nil { + cm := cmr.Data.(model.ChannelMember) + cm.Roles = "channel_user" + if sr := <-Srv.Store.Channel().UpdateMember(&cm); sr.Err != nil { + utils.EnableDebugLogForTest() + panic(sr.Err) + } + } else { + utils.EnableDebugLogForTest() + panic(cmr.Err) + } + + utils.EnableDebugLogForTest() +} + func (me *TestHelper) CreateChannel(client *model.Client, team *model.Team) *model.Channel { return me.createChannel(client, team, model.CHANNEL_OPEN) } |