mirror of
https://github.com/QuilibriumNetwork/ceremonyclient.git
synced 2026-02-21 10:27:26 +08:00
* v2.1.0 [omit consensus and adjacent] - this commit will be amended with the full release after the file copy is complete * 2.1.0 main node rollup
64 lines
1.7 KiB
Go
64 lines
1.7 KiB
Go
package manet
|
|
|
|
import (
|
|
"testing"
|
|
|
|
ma "github.com/multiformats/go-multiaddr"
|
|
"github.com/stretchr/testify/require"
|
|
)
|
|
|
|
func TestResolvingAddrs(t *testing.T) {
|
|
unspec := []ma.Multiaddr{
|
|
newMultiaddr(t, "/ip4/0.0.0.0/tcp/1234"),
|
|
newMultiaddr(t, "/ip4/1.2.3.4/tcp/1234"),
|
|
newMultiaddr(t, "/ip6/::/tcp/1234"),
|
|
newMultiaddr(t, "/ip6/::100/tcp/1234"),
|
|
newMultiaddr(t, "/ip4/0.0.0.0"),
|
|
}
|
|
|
|
iface := []ma.Multiaddr{
|
|
newMultiaddr(t, "/ip4/127.0.0.1"),
|
|
newMultiaddr(t, "/ip4/10.20.30.40"),
|
|
newMultiaddr(t, "/ip6/::1"),
|
|
newMultiaddr(t, "/ip6/::f"),
|
|
}
|
|
|
|
spec := []ma.Multiaddr{
|
|
newMultiaddr(t, "/ip4/127.0.0.1/tcp/1234"),
|
|
newMultiaddr(t, "/ip4/10.20.30.40/tcp/1234"),
|
|
newMultiaddr(t, "/ip4/1.2.3.4/tcp/1234"),
|
|
newMultiaddr(t, "/ip6/::1/tcp/1234"),
|
|
newMultiaddr(t, "/ip6/::f/tcp/1234"),
|
|
newMultiaddr(t, "/ip6/::100/tcp/1234"),
|
|
newMultiaddr(t, "/ip4/127.0.0.1"),
|
|
newMultiaddr(t, "/ip4/10.20.30.40"),
|
|
}
|
|
|
|
actual, err := ResolveUnspecifiedAddresses(unspec, iface)
|
|
require.NoError(t, err)
|
|
require.Equal(t, len(actual), len(spec))
|
|
for i := range actual {
|
|
require.True(t, actual[i].Equal(spec[i]))
|
|
}
|
|
|
|
ip4u := []ma.Multiaddr{newMultiaddr(t, "/ip4/0.0.0.0")}
|
|
ip4i := []ma.Multiaddr{newMultiaddr(t, "/ip4/1.2.3.4")}
|
|
|
|
ip6u := []ma.Multiaddr{newMultiaddr(t, "/ip6/::")}
|
|
ip6i := []ma.Multiaddr{newMultiaddr(t, "/ip6/::1")}
|
|
|
|
if _, err := ResolveUnspecifiedAddress(ip4u[0], ip6i); err == nil {
|
|
t.Fatal("should have failed")
|
|
}
|
|
if _, err := ResolveUnspecifiedAddress(ip6u[0], ip4i); err == nil {
|
|
t.Fatal("should have failed")
|
|
}
|
|
|
|
if _, err := ResolveUnspecifiedAddresses(ip6u, ip4i); err == nil {
|
|
t.Fatal("should have failed")
|
|
}
|
|
if _, err := ResolveUnspecifiedAddresses(ip4u, ip6i); err == nil {
|
|
t.Fatal("should have failed")
|
|
}
|
|
}
|