diff --git a/transport/socks5/packet_listener_test.go b/transport/socks5/packet_listener_test.go index d5ed2f85..0fc628bb 100644 --- a/transport/socks5/packet_listener_test.go +++ b/transport/socks5/packet_listener_test.go @@ -3,6 +3,7 @@ package socks5 import ( "bytes" "context" + "errors" "net" "testing" "time" @@ -34,12 +35,14 @@ func TestSOCKS5Associate(t *testing.T) { // Create SOCKS5 proxy on localhost with a random port. listener, err := net.Listen("tcp", "127.0.0.1:0") require.NoError(t, err) + defer listener.Close() proxyServerAddress := listener.Addr().String() go func() { err := proxySrv.Serve(listener) - defer listener.Close() - require.NoError(t, err) + if !errors.Is(err, net.ErrClosed) && err != nil { + require.NoError(t, err) // Assert no error if it's not the expected close error + } }() // Connect to local proxy, auth and start the PacketConn. diff --git a/transport/socks5/stream_dialer_test.go b/transport/socks5/stream_dialer_test.go index c986e4da..6ce0b597 100644 --- a/transport/socks5/stream_dialer_test.go +++ b/transport/socks5/stream_dialer_test.go @@ -173,12 +173,14 @@ func TestConnectWithoutAuth(t *testing.T) { // Create SOCKS5 proxy on localhost with a random port. listener, err := net.Listen("tcp", "127.0.0.1:0") require.NoError(t, err) + defer listener.Close() go func() { err := server.Serve(listener) - defer listener.Close() t.Log("server is listening...") - require.NoError(t, err) + if !errors.Is(err, net.ErrClosed) && err != nil { + require.NoError(t, err) // Assert no error if it's not the expected close error + } }() address := listener.Addr().String() @@ -206,13 +208,15 @@ func TestConnectWithAuth(t *testing.T) { // Create SOCKS5 proxy on localhost with a random port. listener, err := net.Listen("tcp", "127.0.0.1:0") require.NoError(t, err) + defer listener.Close() address := listener.Addr().String() // Create SOCKS5 proxy on localhost port 8001 go func() { err := server.Serve(listener) - defer listener.Close() - require.NoError(t, err) + if !errors.Is(err, net.ErrClosed) && err != nil { + require.NoError(t, err) // Assert no error if it's not the expected close error + } }() dialer, err := NewClient(&transport.TCPEndpoint{Address: address})