go-multiaddr/registry_test.go
2016-09-19 10:30:07 +08:00

51 lines
1015 B
Go

package manet
import (
"net"
"testing"
ma "github.com/multiformats/go-multiaddr"
)
func TestRegisterSpec(t *testing.T) {
cm := NewCodecMap()
myproto := &NetCodec{
ProtocolName: "test",
NetAddrNetworks: []string{"test", "iptest", "blahtest"},
ConvertMultiaddr: func(a ma.Multiaddr) (net.Addr, error) { return nil, nil },
ParseNetAddr: func(a net.Addr) (ma.Multiaddr, error) { return nil, nil },
}
cm.RegisterNetCodec(myproto)
_, ok := cm.addrParsers["test"]
if !ok {
t.Fatal("myproto not properly registered")
}
_, ok = cm.addrParsers["iptest"]
if !ok {
t.Fatal("myproto not properly registered")
}
_, ok = cm.addrParsers["blahtest"]
if !ok {
t.Fatal("myproto not properly registered")
}
_, ok = cm.maddrParsers["test"]
if !ok {
t.Fatal("myproto not properly registered")
}
_, ok = cm.maddrParsers["iptest"]
if ok {
t.Fatal("myproto not properly registered")
}
_, ok = cm.maddrParsers["blahtest"]
if ok {
t.Fatal("myproto not properly registered")
}
}