This commit is contained in:
ginuerzh 2018-12-09 12:55:57 +08:00
parent e41c11d943
commit dc88462771
10 changed files with 418 additions and 553 deletions

View File

@ -41,8 +41,6 @@ func TestHTTP2Proxy(t *testing.T) {
rand.Read(sendData)
for i, tc := range httpProxyTests {
tc := tc
t.Run(fmt.Sprintf("#%d", i), func(t *testing.T) {
err := http2ProxyRoundtrip(httpSrv.URL, sendData, tc.cliUser, tc.srvUsers)
if err == nil {
if tc.errStr != "" {
@ -56,7 +54,6 @@ func TestHTTP2Proxy(t *testing.T) {
t.Errorf("#%d got error %v, want %v", i, err, tc.errStr)
}
}
})
}
}
@ -162,8 +159,6 @@ func TestHTTPOverH2(t *testing.T) {
rand.Read(sendData)
for i, tc := range httpProxyTests {
tc := tc
t.Run(fmt.Sprintf("#%d", i), func(t *testing.T) {
err := httpOverH2Roundtrip(httpSrv.URL, sendData, nil, tc.cliUser, tc.srvUsers)
if err == nil {
if tc.errStr != "" {
@ -177,7 +172,6 @@ func TestHTTPOverH2(t *testing.T) {
t.Errorf("#%d got error %v, want %v", i, err, tc.errStr)
}
}
})
}
}
@ -283,8 +277,6 @@ func TestSOCKS5OverH2(t *testing.T) {
rand.Read(sendData)
for i, tc := range socks5ProxyTests {
tc := tc
t.Run(fmt.Sprintf("#%d", i), func(t *testing.T) {
err := socks5OverH2Roundtrip(httpSrv.URL, sendData,
nil,
tc.cliUser,
@ -300,7 +292,6 @@ func TestSOCKS5OverH2(t *testing.T) {
t.Errorf("#%d got error: %v", i, err)
}
}
})
}
}
@ -409,22 +400,6 @@ func TestSSOverH2(t *testing.T) {
sendData := make([]byte, 128)
rand.Read(sendData)
var ssProxyTests = []struct {
clientCipher *url.Userinfo
serverCipher *url.Userinfo
pass bool
}{
{nil, nil, false},
{&url.Userinfo{}, &url.Userinfo{}, false},
{url.User("abc"), url.User("abc"), false},
{url.UserPassword("abc", "def"), url.UserPassword("abc", "def"), false},
{url.User("aes-128-cfb"), url.User("aes-128-cfb"), false},
{url.User("aes-128-cfb"), url.UserPassword("aes-128-cfb", "123456"), false},
{url.UserPassword("aes-128-cfb", "123456"), url.User("aes-128-cfb"), false},
{url.UserPassword("aes-128-cfb", "123456"), url.UserPassword("aes-128-cfb", "abc"), false},
{url.UserPassword("aes-128-cfb", "123456"), url.UserPassword("aes-128-cfb", "123456"), true},
}
for i, tc := range ssProxyTests {
tc := tc
t.Run(fmt.Sprintf("#%d", i), func(t *testing.T) {

View File

@ -158,8 +158,6 @@ func TestHTTPProxy(t *testing.T) {
rand.Read(sendData)
for i, tc := range httpProxyTests {
tc := tc
t.Run(fmt.Sprintf("#%d", i), func(t *testing.T) {
err := httpProxyRoundtrip(httpSrv.URL, sendData, tc.cliUser, tc.srvUsers)
if err == nil {
if tc.errStr != "" {
@ -173,7 +171,6 @@ func TestHTTPProxy(t *testing.T) {
t.Errorf("#%d got error %v, want %v", i, err, tc.errStr)
}
}
})
}
}

View File

@ -290,8 +290,6 @@ func TestSSOverKCP(t *testing.T) {
rand.Read(sendData)
for i, tc := range ssProxyTests {
tc := tc
t.Run(fmt.Sprintf("#%d", i), func(t *testing.T) {
err := ssOverKCPRoundtrip(httpSrv.URL, sendData,
tc.clientCipher,
tc.serverCipher,
@ -306,6 +304,5 @@ func TestSSOverKCP(t *testing.T) {
t.Errorf("#%d got error: %v", i, err)
}
}
})
}
}

View File

@ -2,7 +2,6 @@ package gost
import (
"crypto/rand"
"fmt"
"net/http/httptest"
"net/url"
"testing"
@ -42,8 +41,6 @@ func TestHTTPOverQUIC(t *testing.T) {
rand.Read(sendData)
for i, tc := range httpProxyTests {
tc := tc
t.Run(fmt.Sprintf("#%d", i), func(t *testing.T) {
err := httpOverQUICRoundtrip(httpSrv.URL, sendData, tc.cliUser, tc.srvUsers)
if err == nil {
if tc.errStr != "" {
@ -57,7 +54,6 @@ func TestHTTPOverQUIC(t *testing.T) {
t.Errorf("#%d got error %v, want %v", i, err, tc.errStr)
}
}
})
}
}
@ -163,8 +159,6 @@ func TestSOCKS5OverQUIC(t *testing.T) {
rand.Read(sendData)
for i, tc := range socks5ProxyTests {
tc := tc
t.Run(fmt.Sprintf("#%d", i), func(t *testing.T) {
err := socks5OverQUICRoundtrip(httpSrv.URL, sendData,
tc.cliUser,
tc.srvUsers,
@ -179,7 +173,6 @@ func TestSOCKS5OverQUIC(t *testing.T) {
t.Errorf("#%d got error: %v", i, err)
}
}
})
}
}
@ -290,8 +283,6 @@ func TestSSOverQUIC(t *testing.T) {
rand.Read(sendData)
for i, tc := range ssProxyTests {
tc := tc
t.Run(fmt.Sprintf("#%d", i), func(t *testing.T) {
err := ssOverQUICRoundtrip(httpSrv.URL, sendData,
tc.clientCipher,
tc.serverCipher,
@ -306,6 +297,5 @@ func TestSSOverQUIC(t *testing.T) {
t.Errorf("#%d got error: %v", i, err)
}
}
})
}
}

View File

@ -3,7 +3,6 @@ package gost
import (
"crypto/rand"
"crypto/tls"
"fmt"
"net/http/httptest"
"net/url"
"testing"
@ -67,8 +66,6 @@ func TestSOCKS5Proxy(t *testing.T) {
rand.Read(sendData)
for i, tc := range socks5ProxyTests {
tc := tc
t.Run(fmt.Sprintf("#%d", i), func(t *testing.T) {
err := socks5ProxyRoundtrip(httpSrv.URL, sendData,
tc.cliUser,
tc.srvUsers,
@ -83,7 +80,6 @@ func TestSOCKS5Proxy(t *testing.T) {
t.Errorf("#%d got error: %v", i, err)
}
}
})
}
}

View File

@ -2,13 +2,12 @@ package gost
import (
"crypto/rand"
"fmt"
"net/http/httptest"
"net/url"
"testing"
)
var ssProxyTests = []struct {
var ssTests = []struct {
clientCipher *url.Userinfo
serverCipher *url.Userinfo
pass bool
@ -23,54 +22,18 @@ var ssProxyTests = []struct {
{url.UserPassword("aes-128-cfb", "123456"), url.User("aes-128-cfb"), false},
{url.UserPassword("aes-128-cfb", "123456"), url.UserPassword("aes-128-cfb", "abc"), false},
{url.UserPassword("aes-128-cfb", "123456"), url.UserPassword("aes-128-cfb", "123456"), true},
// {url.UserPassword("aes-128-cfb", "123456"), url.UserPassword("aes-192-cfb", "123456"), false},
// {url.UserPassword("aes-128-cfb", "123456"), url.UserPassword("aes-256-cfb", "123456"), false},
// {url.UserPassword("aes-128-cfb", "123456"), url.UserPassword("aes-128-ctr", "123456"), false},
// {url.UserPassword("aes-128-cfb", "123456"), url.UserPassword("aes-192-ctr", "123456"), false},
// {url.UserPassword("aes-128-cfb", "123456"), url.UserPassword("aes-256-ctr", "123456"), false},
// {url.UserPassword("aes-128-cfb", "123456"), url.UserPassword("des-cfb", "123456"), false},
// {url.UserPassword("aes-128-cfb", "123456"), url.UserPassword("bf-cfb", "123456"), false},
// {url.UserPassword("aes-128-cfb", "123456"), url.UserPassword("cast5-cfb", "123456"), false},
// {url.UserPassword("aes-128-cfb", "123456"), url.UserPassword("rc4-md5", "123456"), false},
// {url.UserPassword("aes-128-cfb", "123456"), url.UserPassword("chacha20", "123456"), false},
// {url.UserPassword("aes-128-cfb", "123456"), url.UserPassword("chacha20-ietf", "123456"), false},
// {url.UserPassword("aes-128-cfb", "123456"), url.UserPassword("salsa20", "123456"), false},
{url.User("aes-192-cfb"), url.User("aes-192-cfb"), false},
{url.User("aes-192-cfb"), url.UserPassword("aes-192-cfb", "123456"), false},
{url.UserPassword("aes-192-cfb", "123456"), url.User("aes-192-cfb"), false},
{url.UserPassword("aes-192-cfb", "123456"), url.UserPassword("aes-192-cfb", "abc"), false},
{url.UserPassword("aes-192-cfb", "123456"), url.UserPassword("aes-192-cfb", "123456"), true},
// {url.UserPassword("aes-192-cfb", "123456"), url.UserPassword("aes-128-cfb", "123456"), false},
// {url.UserPassword("aes-192-cfb", "123456"), url.UserPassword("aes-256-cfb", "123456"), false},
// {url.UserPassword("aes-192-cfb", "123456"), url.UserPassword("aes-128-ctr", "123456"), false},
// {url.UserPassword("aes-192-cfb", "123456"), url.UserPassword("aes-192-ctr", "123456"), false},
// {url.UserPassword("aes-192-cfb", "123456"), url.UserPassword("aes-256-ctr", "123456"), false},
// {url.UserPassword("aes-192-cfb", "123456"), url.UserPassword("des-cfb", "123456"), false},
// {url.UserPassword("aes-192-cfb", "123456"), url.UserPassword("bf-cfb", "123456"), false},
// {url.UserPassword("aes-192-cfb", "123456"), url.UserPassword("cast5-cfb", "123456"), false},
// {url.UserPassword("aes-192-cfb", "123456"), url.UserPassword("rc4-md5", "123456"), false},
// {url.UserPassword("aes-192-cfb", "123456"), url.UserPassword("chacha20", "123456"), false},
// {url.UserPassword("aes-192-cfb", "123456"), url.UserPassword("chacha20-ietf", "123456"), false},
// {url.UserPassword("aes-192-cfb", "123456"), url.UserPassword("salsa20", "123456"), false},
{url.User("aes-256-cfb"), url.User("aes-256-cfb"), false},
{url.User("aes-256-cfb"), url.UserPassword("aes-256-cfb", "123456"), false},
{url.UserPassword("aes-256-cfb", "123456"), url.User("aes-256-cfb"), false},
{url.UserPassword("aes-256-cfb", "123456"), url.UserPassword("aes-256-cfb", "abc"), false},
{url.UserPassword("aes-256-cfb", "123456"), url.UserPassword("aes-256-cfb", "123456"), true},
// {url.UserPassword("aes-256-cfb", "123456"), url.UserPassword("aes-128-cfb", "123456"), false},
// {url.UserPassword("aes-256-cfb", "123456"), url.UserPassword("aes-192-cfb", "123456"), false},
// {url.UserPassword("aes-256-cfb", "123456"), url.UserPassword("aes-128-ctr", "123456"), false},
// {url.UserPassword("aes-256-cfb", "123456"), url.UserPassword("aes-192-ctr", "123456"), false},
// {url.UserPassword("aes-256-cfb", "123456"), url.UserPassword("aes-256-ctr", "123456"), false},
// {url.UserPassword("aes-256-cfb", "123456"), url.UserPassword("des-cfb", "123456"), false},
// {url.UserPassword("aes-256-cfb", "123456"), url.UserPassword("bf-cfb", "123456"), false},
// {url.UserPassword("aes-256-cfb", "123456"), url.UserPassword("cast5-cfb", "123456"), false},
// {url.UserPassword("aes-256-cfb", "123456"), url.UserPassword("rc4-md5", "123456"), false},
// {url.UserPassword("aes-256-cfb", "123456"), url.UserPassword("chacha20", "123456"), false},
// {url.UserPassword("aes-256-cfb", "123456"), url.UserPassword("chacha20-ietf", "123456"), false},
// {url.UserPassword("aes-256-cfb", "123456"), url.UserPassword("salsa20", "123456"), false},
{url.User("aes-128-ctr"), url.User("aes-128-ctr"), false},
{url.User("aes-128-ctr"), url.UserPassword("aes-128-ctr", "123456"), false},
@ -133,6 +96,23 @@ var ssProxyTests = []struct {
{url.UserPassword("salsa20", "123456"), url.UserPassword("salsa20", "123456"), true},
}
var ssProxyTests = []struct {
clientCipher *url.Userinfo
serverCipher *url.Userinfo
pass bool
}{
{nil, nil, false},
{&url.Userinfo{}, &url.Userinfo{}, false},
{url.User("abc"), url.User("abc"), false},
{url.UserPassword("abc", "def"), url.UserPassword("abc", "def"), false},
{url.User("aes-128-cfb"), url.User("aes-128-cfb"), false},
{url.User("aes-128-cfb"), url.UserPassword("aes-128-cfb", "123456"), false},
{url.UserPassword("aes-128-cfb", "123456"), url.User("aes-128-cfb"), false},
{url.UserPassword("aes-128-cfb", "123456"), url.UserPassword("aes-128-cfb", "abc"), false},
{url.UserPassword("aes-128-cfb", "123456"), url.UserPassword("aes-128-cfb", "123456"), true},
}
func ssProxyRoundtrip(targetURL string, data []byte, clientInfo *url.Userinfo, serverInfo *url.Userinfo) error {
ln, err := TCPListener("")
if err != nil {
@ -162,9 +142,7 @@ func TestSSProxy(t *testing.T) {
sendData := make([]byte, 128)
rand.Read(sendData)
for i, tc := range ssProxyTests {
tc := tc
t.Run(fmt.Sprintf("#%d", i), func(t *testing.T) {
for i, tc := range ssTests {
err := ssProxyRoundtrip(httpSrv.URL, sendData,
tc.clientCipher,
tc.serverCipher,
@ -179,7 +157,6 @@ func TestSSProxy(t *testing.T) {
t.Errorf("#%d got error: %v", i, err)
}
}
})
}
}

View File

@ -3,7 +3,6 @@ package gost
import (
"crypto/rand"
"crypto/tls"
"fmt"
"net/http/httptest"
"net/url"
"testing"
@ -43,8 +42,6 @@ func TestHTTPOverSSHTunnel(t *testing.T) {
rand.Read(sendData)
for i, tc := range httpProxyTests {
tc := tc
t.Run(fmt.Sprintf("#%d", i), func(t *testing.T) {
err := httpOverSSHTunnelRoundtrip(httpSrv.URL, sendData, nil, tc.cliUser, tc.srvUsers)
if err == nil {
if tc.errStr != "" {
@ -58,7 +55,6 @@ func TestHTTPOverSSHTunnel(t *testing.T) {
t.Errorf("#%d got error %v, want %v", i, err, tc.errStr)
}
}
})
}
}
@ -164,8 +160,6 @@ func TestSOCKS5OverSSHTunnel(t *testing.T) {
rand.Read(sendData)
for i, tc := range socks5ProxyTests {
tc := tc
t.Run(fmt.Sprintf("#%d", i), func(t *testing.T) {
err := socks5OverSSHTunnelRoundtrip(httpSrv.URL, sendData,
nil,
tc.cliUser,
@ -181,7 +175,6 @@ func TestSOCKS5OverSSHTunnel(t *testing.T) {
t.Errorf("#%d got error: %v", i, err)
}
}
})
}
}
@ -291,8 +284,6 @@ func TestSSOverSSHTunnel(t *testing.T) {
rand.Read(sendData)
for i, tc := range ssProxyTests {
tc := tc
t.Run(fmt.Sprintf("#%d", i), func(t *testing.T) {
err := ssOverSSHTunnelRoundtrip(httpSrv.URL, sendData,
nil,
tc.clientCipher,
@ -308,6 +299,5 @@ func TestSSOverSSHTunnel(t *testing.T) {
t.Errorf("#%d got error: %v", i, err)
}
}
})
}
}

View File

@ -3,7 +3,6 @@ package gost
import (
"crypto/rand"
"crypto/tls"
"fmt"
"net/http/httptest"
"net/url"
"testing"
@ -43,8 +42,6 @@ func TestHTTPOverTLS(t *testing.T) {
rand.Read(sendData)
for i, tc := range httpProxyTests {
tc := tc
t.Run(fmt.Sprintf("#%d", i), func(t *testing.T) {
err := httpOverTLSRoundtrip(httpSrv.URL, sendData, nil, tc.cliUser, tc.srvUsers)
if err == nil {
if tc.errStr != "" {
@ -58,7 +55,6 @@ func TestHTTPOverTLS(t *testing.T) {
t.Errorf("#%d got error %v, want %v", i, err, tc.errStr)
}
}
})
}
}
@ -164,8 +160,6 @@ func TestSOCKS5OverTLS(t *testing.T) {
rand.Read(sendData)
for i, tc := range socks5ProxyTests {
tc := tc
t.Run(fmt.Sprintf("#%d", i), func(t *testing.T) {
err := socks5OverTLSRoundtrip(httpSrv.URL, sendData,
nil,
tc.cliUser,
@ -181,7 +175,6 @@ func TestSOCKS5OverTLS(t *testing.T) {
t.Errorf("#%d got error: %v", i, err)
}
}
})
}
}
@ -291,8 +284,6 @@ func TestSSOverTLS(t *testing.T) {
rand.Read(sendData)
for i, tc := range ssProxyTests {
tc := tc
t.Run(fmt.Sprintf("#%d", i), func(t *testing.T) {
err := ssOverTLSRoundtrip(httpSrv.URL, sendData,
nil,
tc.clientCipher,
@ -308,7 +299,6 @@ func TestSSOverTLS(t *testing.T) {
t.Errorf("#%d got error: %v", i, err)
}
}
})
}
}
@ -346,8 +336,6 @@ func TestHTTPOverMTLS(t *testing.T) {
rand.Read(sendData)
for i, tc := range httpProxyTests {
tc := tc
t.Run(fmt.Sprintf("#%d", i), func(t *testing.T) {
err := httpOverMTLSRoundtrip(httpSrv.URL, sendData, nil, tc.cliUser, tc.srvUsers)
if err == nil {
if tc.errStr != "" {
@ -361,7 +349,6 @@ func TestHTTPOverMTLS(t *testing.T) {
t.Errorf("#%d got error %v, want %v", i, err, tc.errStr)
}
}
})
}
}
@ -467,8 +454,6 @@ func TestSOCKS5OverMTLS(t *testing.T) {
rand.Read(sendData)
for i, tc := range socks5ProxyTests {
tc := tc
t.Run(fmt.Sprintf("#%d", i), func(t *testing.T) {
err := socks5OverMTLSRoundtrip(httpSrv.URL, sendData,
nil,
tc.cliUser,
@ -484,7 +469,6 @@ func TestSOCKS5OverMTLS(t *testing.T) {
t.Errorf("#%d got error: %v", i, err)
}
}
})
}
}
@ -594,8 +578,6 @@ func TestSSOverMTLS(t *testing.T) {
rand.Read(sendData)
for i, tc := range ssProxyTests {
tc := tc
t.Run(fmt.Sprintf("#%d", i), func(t *testing.T) {
err := ssOverMTLSRoundtrip(httpSrv.URL, sendData,
nil,
tc.clientCipher,
@ -611,6 +593,5 @@ func TestSSOverMTLS(t *testing.T) {
t.Errorf("#%d got error: %v", i, err)
}
}
})
}
}

View File

@ -2,7 +2,6 @@ package gost
import (
"crypto/rand"
"fmt"
"net/http/httptest"
"net/url"
"testing"
@ -42,8 +41,6 @@ func TestHTTPOverWS(t *testing.T) {
rand.Read(sendData)
for i, tc := range httpProxyTests {
tc := tc
t.Run(fmt.Sprintf("#%d", i), func(t *testing.T) {
err := httpOverWSRoundtrip(httpSrv.URL, sendData, tc.cliUser, tc.srvUsers)
if err == nil {
if tc.errStr != "" {
@ -57,7 +54,6 @@ func TestHTTPOverWS(t *testing.T) {
t.Errorf("#%d got error %v, want %v", i, err, tc.errStr)
}
}
})
}
}
@ -163,8 +159,6 @@ func TestSOCKS5OverWS(t *testing.T) {
rand.Read(sendData)
for i, tc := range socks5ProxyTests {
tc := tc
t.Run(fmt.Sprintf("#%d", i), func(t *testing.T) {
err := socks5OverWSRoundtrip(httpSrv.URL, sendData,
tc.cliUser,
tc.srvUsers,
@ -179,7 +173,6 @@ func TestSOCKS5OverWS(t *testing.T) {
t.Errorf("#%d got error: %v", i, err)
}
}
})
}
}
@ -290,8 +283,6 @@ func TestSSOverWS(t *testing.T) {
rand.Read(sendData)
for i, tc := range ssProxyTests {
tc := tc
t.Run(fmt.Sprintf("#%d", i), func(t *testing.T) {
err := ssOverWSRoundtrip(httpSrv.URL, sendData,
tc.clientCipher,
tc.serverCipher,
@ -306,7 +297,6 @@ func TestSSOverWS(t *testing.T) {
t.Errorf("#%d got error: %v", i, err)
}
}
})
}
}
@ -344,8 +334,6 @@ func TestHTTPOverMWS(t *testing.T) {
rand.Read(sendData)
for i, tc := range httpProxyTests {
tc := tc
t.Run(fmt.Sprintf("#%d", i), func(t *testing.T) {
err := httpOverMWSRoundtrip(httpSrv.URL, sendData, tc.cliUser, tc.srvUsers)
if err == nil {
if tc.errStr != "" {
@ -359,7 +347,6 @@ func TestHTTPOverMWS(t *testing.T) {
t.Errorf("#%d got error %v, want %v", i, err, tc.errStr)
}
}
})
}
}
@ -466,8 +453,6 @@ func TestSOCKS5OverMWS(t *testing.T) {
rand.Read(sendData)
for i, tc := range socks5ProxyTests {
tc := tc
t.Run(fmt.Sprintf("#%d", i), func(t *testing.T) {
err := socks5OverMWSRoundtrip(httpSrv.URL, sendData,
tc.cliUser,
tc.srvUsers,
@ -482,7 +467,6 @@ func TestSOCKS5OverMWS(t *testing.T) {
t.Errorf("#%d got error: %v", i, err)
}
}
})
}
}
@ -593,8 +577,6 @@ func TestSSOverMWS(t *testing.T) {
rand.Read(sendData)
for i, tc := range ssProxyTests {
tc := tc
t.Run(fmt.Sprintf("#%d", i), func(t *testing.T) {
err := ssOverMWSRoundtrip(httpSrv.URL, sendData,
tc.clientCipher,
tc.serverCipher,
@ -609,6 +591,5 @@ func TestSSOverMWS(t *testing.T) {
t.Errorf("#%d got error: %v", i, err)
}
}
})
}
}

View File

@ -3,7 +3,6 @@ package gost
import (
"crypto/rand"
"crypto/tls"
"fmt"
"net/http/httptest"
"net/url"
"testing"
@ -43,8 +42,6 @@ func TestHTTPOverWSS(t *testing.T) {
rand.Read(sendData)
for i, tc := range httpProxyTests {
tc := tc
t.Run(fmt.Sprintf("#%d", i), func(t *testing.T) {
err := httpOverWSSRoundtrip(httpSrv.URL, sendData, nil, tc.cliUser, tc.srvUsers)
if err == nil {
if tc.errStr != "" {
@ -58,7 +55,6 @@ func TestHTTPOverWSS(t *testing.T) {
t.Errorf("#%d got error %v, want %v", i, err, tc.errStr)
}
}
})
}
}
@ -164,8 +160,6 @@ func TestSOCKS5OverWSS(t *testing.T) {
rand.Read(sendData)
for i, tc := range socks5ProxyTests {
tc := tc
t.Run(fmt.Sprintf("#%d", i), func(t *testing.T) {
err := socks5OverWSSRoundtrip(httpSrv.URL, sendData,
tc.cliUser,
tc.srvUsers,
@ -180,7 +174,6 @@ func TestSOCKS5OverWSS(t *testing.T) {
t.Errorf("#%d got error: %v", i, err)
}
}
})
}
}
@ -291,8 +284,6 @@ func TestSSOverWSS(t *testing.T) {
rand.Read(sendData)
for i, tc := range ssProxyTests {
tc := tc
t.Run(fmt.Sprintf("#%d", i), func(t *testing.T) {
err := ssOverWSSRoundtrip(httpSrv.URL, sendData,
tc.clientCipher,
tc.serverCipher,
@ -307,7 +298,6 @@ func TestSSOverWSS(t *testing.T) {
t.Errorf("#%d got error: %v", i, err)
}
}
})
}
}
@ -345,8 +335,6 @@ func TestHTTPOverMWSS(t *testing.T) {
rand.Read(sendData)
for i, tc := range httpProxyTests {
tc := tc
t.Run(fmt.Sprintf("#%d", i), func(t *testing.T) {
err := httpOverMWSSRoundtrip(httpSrv.URL, sendData, tc.cliUser, tc.srvUsers)
if err == nil {
if tc.errStr != "" {
@ -360,7 +348,6 @@ func TestHTTPOverMWSS(t *testing.T) {
t.Errorf("#%d got error %v, want %v", i, err, tc.errStr)
}
}
})
}
}
@ -467,8 +454,6 @@ func TestSOCKS5OverMWSS(t *testing.T) {
rand.Read(sendData)
for i, tc := range socks5ProxyTests {
tc := tc
t.Run(fmt.Sprintf("#%d", i), func(t *testing.T) {
err := socks5OverMWSSRoundtrip(httpSrv.URL, sendData,
tc.cliUser,
tc.srvUsers,
@ -483,7 +468,6 @@ func TestSOCKS5OverMWSS(t *testing.T) {
t.Errorf("#%d got error: %v", i, err)
}
}
})
}
}
@ -594,8 +578,6 @@ func TestSSOverMWSS(t *testing.T) {
rand.Read(sendData)
for i, tc := range ssProxyTests {
tc := tc
t.Run(fmt.Sprintf("#%d", i), func(t *testing.T) {
err := ssOverMWSSRoundtrip(httpSrv.URL, sendData,
tc.clientCipher,
tc.serverCipher,
@ -610,6 +592,5 @@ func TestSSOverMWSS(t *testing.T) {
t.Errorf("#%d got error: %v", i, err)
}
}
})
}
}