summaryrefslogblamecommitdiffstats
path: root/gateway/samechannel/samechannel_test.go
blob: 17d816a9b5176ed432de50b0c9150bf133b03b0d (plain) (tree)
1
2
3
4
5
6
7
8
9
                   
        
                   
                 
                                                     
                                    
                                            
 
                    








                                                    










































                                                                            
         

                                  

                                                                     
                                  
                                                                  
 
package samechannel

import (
	"io/ioutil"
	"testing"

	"github.com/42wim/matterbridge/bridge/config"
	"github.com/sirupsen/logrus"
	"github.com/stretchr/testify/assert"
)

const testConfig = `
[mattermost.test]
[slack.test]

[[samechannelgateway]]
   enable = true
   name = "blah"
      accounts = [ "mattermost.test","slack.test" ]
      channels = [ "testing","testing2","testing10"]
`

var (
	expectedConfig = config.Gateway{
		Name:   "blah",
		Enable: true,
		In:     []config.Bridge(nil),
		Out:    []config.Bridge(nil),
		InOut: []config.Bridge{
			{
				Account:     "mattermost.test",
				Channel:     "testing",
				Options:     config.ChannelOptions{Key: ""},
				SameChannel: true,
			},
			{
				Account:     "mattermost.test",
				Channel:     "testing2",
				Options:     config.ChannelOptions{Key: ""},
				SameChannel: true,
			},
			{
				Account:     "mattermost.test",
				Channel:     "testing10",
				Options:     config.ChannelOptions{Key: ""},
				SameChannel: true,
			},
			{
				Account:     "slack.test",
				Channel:     "testing",
				Options:     config.ChannelOptions{Key: ""},
				SameChannel: true,
			},
			{
				Account:     "slack.test",
				Channel:     "testing2",
				Options:     config.ChannelOptions{Key: ""},
				SameChannel: true,
			},
			{
				Account:     "slack.test",
				Channel:     "testing10",
				Options:     config.ChannelOptions{Key: ""},
				SameChannel: true,
			},
		},
	}
)

func TestGetConfig(t *testing.T) {
	logger := logrus.New()
	logger.SetOutput(ioutil.Discard)
	cfg := config.NewConfigFromString(logger, []byte(testConfig))
	sgw := New(cfg)
	configs := sgw.GetConfig()
	assert.Equal(t, []config.Gateway{expectedConfig}, configs)
}