MM-27493 Shared channels (MVP) (#17301)
Remote Cluster Service - provides ability for multiple Mattermost cluster instances to create a trusted connection with each other and exchange messages - trusted connections are managed via slash commands (for now) - facilitates features requiring inter-cluster communication, such as Shared Channels Shared Channels Service - provides ability to shared channels between one or more Mattermost cluster instances (using trusted connection) - sharing/unsharing of channels is managed via slash commands (for now)
Этот коммит содержится в:
@@ -439,3 +439,39 @@ func TestGetCloudSession(t *testing.T) {
|
||||
require.Equal(t, "api.context.invalid_token.error", err.Id)
|
||||
})
|
||||
}
|
||||
|
||||
func TestGetRemoteClusterSession(t *testing.T) {
|
||||
th := Setup(t)
|
||||
token := model.NewId()
|
||||
remoteId := model.NewId()
|
||||
|
||||
rc := model.RemoteCluster{
|
||||
RemoteId: remoteId,
|
||||
RemoteTeamId: model.NewId(),
|
||||
DisplayName: "test",
|
||||
Token: token,
|
||||
CreatorId: model.NewId(),
|
||||
}
|
||||
|
||||
_, err := th.GetSqlStore().RemoteCluster().Save(&rc)
|
||||
require.NoError(t, err)
|
||||
|
||||
t.Run("Valid remote token should return session", func(t *testing.T) {
|
||||
session, err := th.App.GetRemoteClusterSession(token, remoteId)
|
||||
require.Nil(t, err)
|
||||
require.NotNil(t, session)
|
||||
require.Equal(t, token, session.Token)
|
||||
})
|
||||
|
||||
t.Run("Invalid remote token should return error", func(t *testing.T) {
|
||||
session, err := th.App.GetRemoteClusterSession(model.NewId(), remoteId)
|
||||
require.Error(t, err)
|
||||
require.Nil(t, session)
|
||||
})
|
||||
|
||||
t.Run("Invalid remote id should return error", func(t *testing.T) {
|
||||
session, err := th.App.GetRemoteClusterSession(token, model.NewId())
|
||||
require.Error(t, err)
|
||||
require.Nil(t, session)
|
||||
})
|
||||
}
|
||||
|
||||
Ссылка в новой задаче
Block a user