v2fly/transport/internet/system_listener_test.go

30 lines
560 B
Go

package internet_test
import (
"context"
"net"
"testing"
"v2ray.com/core/common"
"v2ray.com/core/transport/internet"
)
func TestRegisterListenerController(t *testing.T) {
var gotFd uintptr
common.Must(internet.RegisterListenerController(func(network string, addr string, fd uintptr) error {
gotFd = fd
return nil
}))
conn, err := internet.ListenSystemPacket(context.Background(), &net.UDPAddr{
IP: net.IPv4zero,
}, nil)
common.Must(err)
common.Must(conn.Close())
if gotFd == 0 {
t.Error("expected none-zero fd, but actually 0")
}
}