39 lines
805 B
Go
39 lines
805 B
Go
package allregions
|
|
|
|
import (
|
|
"fmt"
|
|
"testing"
|
|
|
|
"github.com/rs/zerolog"
|
|
"github.com/stretchr/testify/assert"
|
|
)
|
|
|
|
func (ea *EdgeAddr) String() string {
|
|
return fmt.Sprintf("%s-%s", ea.TCP, ea.UDP)
|
|
}
|
|
|
|
func TestEdgeDiscovery(t *testing.T) {
|
|
mockAddrs := newMockAddrs(19, 2, 5)
|
|
netLookupSRV = mockNetLookupSRV(mockAddrs)
|
|
netLookupIP = mockNetLookupIP(mockAddrs)
|
|
|
|
expectedAddrSet := map[string]bool{}
|
|
for _, addrs := range mockAddrs.addrMap {
|
|
for _, addr := range addrs {
|
|
expectedAddrSet[addr.String()] = true
|
|
}
|
|
}
|
|
|
|
l := zerolog.Nop()
|
|
addrLists, err := edgeDiscovery(&l)
|
|
assert.NoError(t, err)
|
|
actualAddrSet := map[string]bool{}
|
|
for _, addrs := range addrLists {
|
|
for _, addr := range addrs {
|
|
actualAddrSet[addr.String()] = true
|
|
}
|
|
}
|
|
|
|
assert.Equal(t, expectedAddrSet, actualAddrSet)
|
|
}
|