diff options
author | Martin Kraft <mkraft@users.noreply.github.com> | 2018-07-30 15:06:08 -0400 |
---|---|---|
committer | GitHub <noreply@github.com> | 2018-07-30 15:06:08 -0400 |
commit | 5872bf9c2f9b81c7aad761d40a6970f6267f1424 (patch) | |
tree | 2f850c0678f9fbd8979d41cb758503ca6cb1a2d7 /plugin | |
parent | 65cd447a61efa852da2c0e7db25f385c2436e236 (diff) | |
download | chat-5872bf9c2f9b81c7aad761d40a6970f6267f1424.tar.gz chat-5872bf9c2f9b81c7aad761d40a6970f6267f1424.tar.bz2 chat-5872bf9c2f9b81c7aad761d40a6970f6267f1424.zip |
Pr 9039 (#9187)
* MM-11065: Allow to search and get archived channels from the API
* Fixing more tests
* Add some unit tests
* Add includeDeleted parameter to session permissions check function
* More test fixing
* Adding archive channels list in channels search
* Add restriction for archived channel edition
* Reverting permissions checks modification
* Changed the query parameter to include_deleted
* Enable search archive channels as true by default
* Adding tests for verify search on deleted channels
* Allowing to override archive channels during the imports
* Fixed test
* Search in archive channels from the API must be explicitly requested
* Removing includeDeleted parameter from GetChannelByName and GetChannelByNameForTeam
* Back to ViewArchivedChannels config
* Fixing tests
* Reverting GetChannelByName parameter
* Add include deleted parameter on GetChannel functions in plugins api
* Fixing tests
Diffstat (limited to 'plugin')
-rw-r--r-- | plugin/api.go | 4 | ||||
-rw-r--r-- | plugin/client_rpc_generated.go | 18 | ||||
-rw-r--r-- | plugin/example_help_test.go | 2 | ||||
-rw-r--r-- | plugin/plugintest/api.go | 28 |
4 files changed, 27 insertions, 25 deletions
diff --git a/plugin/api.go b/plugin/api.go index 6d4976c4f..0b413d4d1 100644 --- a/plugin/api.go +++ b/plugin/api.go @@ -108,10 +108,10 @@ type API interface { GetChannel(channelId string) (*model.Channel, *model.AppError) // GetChannelByName gets a channel by its name, given a team id. - GetChannelByName(teamId, name string) (*model.Channel, *model.AppError) + GetChannelByName(teamId, name string, includeDeleted bool) (*model.Channel, *model.AppError) // GetChannelByNameForTeamName gets a channel by its name, given a team name. - GetChannelByNameForTeamName(teamName, channelName string) (*model.Channel, *model.AppError) + GetChannelByNameForTeamName(teamName, channelName string, includeDeleted bool) (*model.Channel, *model.AppError) // GetDirectChannel gets a direct message channel. GetDirectChannel(userId1, userId2 string) (*model.Channel, *model.AppError) diff --git a/plugin/client_rpc_generated.go b/plugin/client_rpc_generated.go index 9eac71be4..98b906186 100644 --- a/plugin/client_rpc_generated.go +++ b/plugin/client_rpc_generated.go @@ -1349,6 +1349,7 @@ func (s *apiRPCServer) GetChannel(args *Z_GetChannelArgs, returns *Z_GetChannelR type Z_GetChannelByNameArgs struct { A string B string + C bool } type Z_GetChannelByNameReturns struct { @@ -1356,8 +1357,8 @@ type Z_GetChannelByNameReturns struct { B *model.AppError } -func (g *apiRPCClient) GetChannelByName(teamId, name string) (*model.Channel, *model.AppError) { - _args := &Z_GetChannelByNameArgs{teamId, name} +func (g *apiRPCClient) GetChannelByName(teamId, name string, includeDeleted bool) (*model.Channel, *model.AppError) { + _args := &Z_GetChannelByNameArgs{teamId, name, includeDeleted} _returns := &Z_GetChannelByNameReturns{} if err := g.client.Call("Plugin.GetChannelByName", _args, _returns); err != nil { log.Printf("RPC call to GetChannelByName API failed: %s", err.Error()) @@ -1367,9 +1368,9 @@ func (g *apiRPCClient) GetChannelByName(teamId, name string) (*model.Channel, *m func (s *apiRPCServer) GetChannelByName(args *Z_GetChannelByNameArgs, returns *Z_GetChannelByNameReturns) error { if hook, ok := s.impl.(interface { - GetChannelByName(teamId, name string) (*model.Channel, *model.AppError) + GetChannelByName(teamId, name string, includeDeleted bool) (*model.Channel, *model.AppError) }); ok { - returns.A, returns.B = hook.GetChannelByName(args.A, args.B) + returns.A, returns.B = hook.GetChannelByName(args.A, args.B, args.C) } else { return fmt.Errorf("API GetChannelByName called but not implemented.") } @@ -1379,6 +1380,7 @@ func (s *apiRPCServer) GetChannelByName(args *Z_GetChannelByNameArgs, returns *Z type Z_GetChannelByNameForTeamNameArgs struct { A string B string + C bool } type Z_GetChannelByNameForTeamNameReturns struct { @@ -1386,8 +1388,8 @@ type Z_GetChannelByNameForTeamNameReturns struct { B *model.AppError } -func (g *apiRPCClient) GetChannelByNameForTeamName(teamName, channelName string) (*model.Channel, *model.AppError) { - _args := &Z_GetChannelByNameForTeamNameArgs{teamName, channelName} +func (g *apiRPCClient) GetChannelByNameForTeamName(teamName, channelName string, includeDeleted bool) (*model.Channel, *model.AppError) { + _args := &Z_GetChannelByNameForTeamNameArgs{teamName, channelName, includeDeleted} _returns := &Z_GetChannelByNameForTeamNameReturns{} if err := g.client.Call("Plugin.GetChannelByNameForTeamName", _args, _returns); err != nil { log.Printf("RPC call to GetChannelByNameForTeamName API failed: %s", err.Error()) @@ -1397,9 +1399,9 @@ func (g *apiRPCClient) GetChannelByNameForTeamName(teamName, channelName string) func (s *apiRPCServer) GetChannelByNameForTeamName(args *Z_GetChannelByNameForTeamNameArgs, returns *Z_GetChannelByNameForTeamNameReturns) error { if hook, ok := s.impl.(interface { - GetChannelByNameForTeamName(teamName, channelName string) (*model.Channel, *model.AppError) + GetChannelByNameForTeamName(teamName, channelName string, includeDeleted bool) (*model.Channel, *model.AppError) }); ok { - returns.A, returns.B = hook.GetChannelByNameForTeamName(args.A, args.B) + returns.A, returns.B = hook.GetChannelByNameForTeamName(args.A, args.B, args.C) } else { return fmt.Errorf("API GetChannelByNameForTeamName called but not implemented.") } diff --git a/plugin/example_help_test.go b/plugin/example_help_test.go index 3f9be9a20..175b6588e 100644 --- a/plugin/example_help_test.go +++ b/plugin/example_help_test.go @@ -30,7 +30,7 @@ func (p *HelpPlugin) OnConfigurationChange() error { return nil } - channel, err := p.API.GetChannelByName(p.ChannelName, team.Id) + channel, err := p.API.GetChannelByName(p.ChannelName, team.Id, false) if err != nil { p.API.LogError("failed to find channel", "channel_name", p.ChannelName) return nil diff --git a/plugin/plugintest/api.go b/plugin/plugintest/api.go index 473ef6d2b..70e90df4b 100644 --- a/plugin/plugintest/api.go +++ b/plugin/plugintest/api.go @@ -308,13 +308,13 @@ func (_m *API) GetChannel(channelId string) (*model.Channel, *model.AppError) { return r0, r1 } -// GetChannelByName provides a mock function with given fields: teamId, name -func (_m *API) GetChannelByName(teamId string, name string) (*model.Channel, *model.AppError) { - ret := _m.Called(teamId, name) +// GetChannelByName provides a mock function with given fields: teamId, name, includeDeleted +func (_m *API) GetChannelByName(teamId string, name string, includeDeleted bool) (*model.Channel, *model.AppError) { + ret := _m.Called(teamId, name, includeDeleted) var r0 *model.Channel - if rf, ok := ret.Get(0).(func(string, string) *model.Channel); ok { - r0 = rf(teamId, name) + if rf, ok := ret.Get(0).(func(string, string, bool) *model.Channel); ok { + r0 = rf(teamId, name, includeDeleted) } else { if ret.Get(0) != nil { r0 = ret.Get(0).(*model.Channel) @@ -322,8 +322,8 @@ func (_m *API) GetChannelByName(teamId string, name string) (*model.Channel, *mo } var r1 *model.AppError - if rf, ok := ret.Get(1).(func(string, string) *model.AppError); ok { - r1 = rf(teamId, name) + if rf, ok := ret.Get(1).(func(string, string, bool) *model.AppError); ok { + r1 = rf(teamId, name, includeDeleted) } else { if ret.Get(1) != nil { r1 = ret.Get(1).(*model.AppError) @@ -333,13 +333,13 @@ func (_m *API) GetChannelByName(teamId string, name string) (*model.Channel, *mo return r0, r1 } -// GetChannelByNameForTeamName provides a mock function with given fields: teamName, channelName -func (_m *API) GetChannelByNameForTeamName(teamName string, channelName string) (*model.Channel, *model.AppError) { - ret := _m.Called(teamName, channelName) +// GetChannelByNameForTeamName provides a mock function with given fields: teamName, channelName, includeDeleted +func (_m *API) GetChannelByNameForTeamName(teamName string, channelName string, includeDeleted bool) (*model.Channel, *model.AppError) { + ret := _m.Called(teamName, channelName, includeDeleted) var r0 *model.Channel - if rf, ok := ret.Get(0).(func(string, string) *model.Channel); ok { - r0 = rf(teamName, channelName) + if rf, ok := ret.Get(0).(func(string, string, bool) *model.Channel); ok { + r0 = rf(teamName, channelName, includeDeleted) } else { if ret.Get(0) != nil { r0 = ret.Get(0).(*model.Channel) @@ -347,8 +347,8 @@ func (_m *API) GetChannelByNameForTeamName(teamName string, channelName string) } var r1 *model.AppError - if rf, ok := ret.Get(1).(func(string, string) *model.AppError); ok { - r1 = rf(teamName, channelName) + if rf, ok := ret.Get(1).(func(string, string, bool) *model.AppError); ok { + r1 = rf(teamName, channelName, includeDeleted) } else { if ret.Get(1) != nil { r1 = ret.Get(1).(*model.AppError) |