github.com/xzl8028/xenia-server@v0.0.0-20190809101854-18450a97da63/tests/plugin_tests/test_members_plugin/main.go (about) 1 // Copyright (c) 2015-present Xenia, Inc. All Rights Reserved. 2 // See LICENSE.txt for license information. 3 4 package main 5 6 import ( 7 "github.com/xzl8028/xenia-server/model" 8 "github.com/xzl8028/xenia-server/plugin" 9 ) 10 11 type MyPlugin struct { 12 plugin.XeniaPlugin 13 } 14 15 func (p *MyPlugin) MessageWillBePosted(c *plugin.Context, post *model.Post) (*model.Post, string) { 16 teamMembers, err := p.API.GetTeamMembersForUser("{{.BasicUser.Id}}", 0, 10) 17 if err != nil { 18 return nil, err.Error() + "failed to get team members" 19 } else if len(teamMembers) != 1 { 20 return nil, "Invalid number of team members" 21 } else if teamMembers[0].UserId != "{{.BasicUser.Id}}" || teamMembers[0].TeamId != "{{.BasicTeam.Id}}" { 22 return nil, "Invalid user or team id returned" 23 } 24 return nil, "" 25 } 26 27 func main() { 28 plugin.ClientMain(&MyPlugin{}) 29 }