github.com/xzl8028/xenia-server@v0.0.0-20190809101854-18450a97da63/tests/plugin_tests/test_search_channels_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 17 channels, err := p.API.SearchChannels("{{.BasicTeam.Id}}", "{{.BasicChannel.Name}}") 18 if err != nil { 19 return nil, err.Error() 20 } 21 if len(channels) != 1 { 22 return nil, "Returned invalid number of channels" 23 } 24 25 channels, err = p.API.SearchChannels("invalidid", "{{.BasicChannel.Name}}") 26 if err != nil { 27 return nil, err.Error() 28 } 29 if len(channels) != 0 { 30 return nil, "Returned invalid number of channels" 31 } 32 33 return nil, "" 34 } 35 36 func main() { 37 plugin.ClientMain(&MyPlugin{}) 38 }