summaryrefslogtreecommitdiffstats
path: root/api/apitestlib.go
diff options
context:
space:
mode:
authorGeorge Goldberg <george@gberg.me>2016-12-22 20:44:37 +0000
committerChristopher Speller <crspeller@gmail.com>2016-12-22 15:44:37 -0500
commitca61b4bed94ea98530bf4f1b2f7585fe86ef80cd (patch)
treeb9f9c42a8ad6d125b7d21adcd386a7f7c0d9a73a /api/apitestlib.go
parent03e1d0aac3746c89d56284e5eea52b7a363d0e05 (diff)
downloadchat-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.go36
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)
}