p2p/nat: update tests

This commit is contained in:
Felix Lange 2025-01-23 15:37:13 +01:00
parent ef9f952ab3
commit e3a166d99e
3 changed files with 9 additions and 5 deletions

View file

@ -18,6 +18,7 @@ package nat
import (
"net"
"strings"
"testing"
"time"
@ -70,7 +71,7 @@ func TestParseStun(t *testing.T) {
natStr string
want *stun
}{
{"stun:default", &stun{serverList: stunDefaultServerList}},
{"stun:default", &stun{serverList: strings.Split(stunDefaultServers, "\n")}},
{"stun:1.2.3.4:1234", &stun{serverList: []string{"1.2.3.4:1234"}}},
}

View file

@ -34,6 +34,8 @@ var stunDefaultServers string
const requestLimit = 3
var errSTUNFailed = errors.New("STUN requests failed")
type stun struct {
serverList []string
}
@ -80,7 +82,7 @@ func (s *stun) ExternalIP() (net.IP, error) {
}
return ip, nil
}
return nil, errors.New("STUN requests failed")
return nil, errSTUNFailed
}
func (s *stun) randomServers(n int) []string {

View file

@ -15,9 +15,10 @@ func TestNatStun(t *testing.T) {
func TestUnreachedNatServer(t *testing.T) {
stun := &stun{
serverList: []string{"1.2.3.4:1234", "1.2.3.4:1234", "1.2.3.4:1234"},
serverList: []string{"198.51.100.2:1234", "198.51.100.5"},
}
stun.serverList = append(stun.serverList, stunDefaultServerList...)
_, err := stun.ExternalIP()
assert.NoError(t, err)
if err != errSTUNFailed {
t.Fatal("wrong error:", err)
}
}