Skip to content

Commit

Permalink
Add test for duplicate tpts in muxer
Browse files Browse the repository at this point in the history
  • Loading branch information
rargulati committed Aug 21, 2018
1 parent 3c19cb1 commit 6e72e88
Showing 1 changed file with 47 additions and 0 deletions.
47 changes: 47 additions & 0 deletions config/muxer_test.go
Original file line number Diff line number Diff line change
@@ -1,9 +1,13 @@
package config

import (
"context"
"testing"

host "github.com/libp2p/go-libp2p-host"
peer "github.com/libp2p/go-libp2p-peer"
swarmt "github.com/libp2p/go-libp2p-swarm/testing"
bhost "github.com/libp2p/go-libp2p/p2p/host/basic"
mux "github.com/libp2p/go-stream-muxer"
yamux "github.com/whyrusleeping/go-smux-yamux"
)
Expand Down Expand Up @@ -52,3 +56,46 @@ func TestMuxerBadTypes(t *testing.T) {
}
}
}

func TestCatchDuplicateTransportsMuxer(t *testing.T) {
ctx := context.Background()
h := bhost.New(swarmt.GenSwarm(t, ctx))
yamuxMuxer, err := MuxerConstructor(yamux.DefaultTransport)
if err != nil {
t.Fatal(err)
}

var tests = map[string]struct {
h host.Host
transports []MsMuxC
expectedError string
}{
"no duplicate transports": {
h: h,
transports: []MsMuxC{MsMuxC{yamuxMuxer, "yamux"}},
expectedError: "",
},
"duplicate transports": {
h: h,
transports: []MsMuxC{
MsMuxC{yamuxMuxer, "yamux"},
MsMuxC{yamuxMuxer, "yamux"},
},
expectedError: "duplicate muxer transport: yamux",
},
}
for testName, test := range tests {
t.Run(testName, func(t *testing.T) {
_, err = makeMuxer(test.h, test.transports)
if err != nil {
if err.Error() != test.expectedError {
t.Errorf(
"\nexpected: [%v]\nactual: [%v]\n",
test.expectedError,
err,
)
}
}
})
}
}

0 comments on commit 6e72e88

Please sign in to comment.