mirror of
https://github.com/ScuroNeko/mtg.git
synced 2026-09-02 00:11:56 +03:00
Fix lint issues
This commit is contained in:
@@ -66,7 +66,7 @@ func (c *circuitBreakerDialer) doClosed(ctx context.Context,
|
|||||||
if err == nil {
|
if err == nil {
|
||||||
c.switchState(circuitBreakerStateClosed)
|
c.switchState(circuitBreakerStateClosed)
|
||||||
|
|
||||||
return conn, err
|
return conn, err // nolint: wrapcheck
|
||||||
}
|
}
|
||||||
|
|
||||||
c.failuresCount++
|
c.failuresCount++
|
||||||
@@ -75,7 +75,7 @@ func (c *circuitBreakerDialer) doClosed(ctx context.Context,
|
|||||||
c.switchState(circuitBreakerStateOpened)
|
c.switchState(circuitBreakerStateOpened)
|
||||||
}
|
}
|
||||||
|
|
||||||
return conn, err
|
return conn, err // nolint: wrapcheck
|
||||||
}
|
}
|
||||||
|
|
||||||
func (c *circuitBreakerDialer) doHalfOpened(ctx context.Context, network, address string) (net.Conn, error) {
|
func (c *circuitBreakerDialer) doHalfOpened(ctx context.Context, network, address string) (net.Conn, error) {
|
||||||
@@ -99,7 +99,7 @@ func (c *circuitBreakerDialer) doHalfOpened(ctx context.Context, network, addres
|
|||||||
}
|
}
|
||||||
|
|
||||||
if c.state != circuitBreakerStateHalfOpened {
|
if c.state != circuitBreakerStateHalfOpened {
|
||||||
return conn, err
|
return conn, err // nolint: wrapcheck
|
||||||
}
|
}
|
||||||
|
|
||||||
if err == nil {
|
if err == nil {
|
||||||
@@ -108,7 +108,7 @@ func (c *circuitBreakerDialer) doHalfOpened(ctx context.Context, network, addres
|
|||||||
c.switchState(circuitBreakerStateOpened)
|
c.switchState(circuitBreakerStateOpened)
|
||||||
}
|
}
|
||||||
|
|
||||||
return conn, err
|
return conn, err // nolint: wrapcheck
|
||||||
}
|
}
|
||||||
|
|
||||||
func (c *circuitBreakerDialer) switchState(state uint32) {
|
func (c *circuitBreakerDialer) switchState(state uint32) {
|
||||||
|
|||||||
@@ -110,10 +110,10 @@ func (suite *CircuitBreakerTestSuite) TestHalfOpen() {
|
|||||||
Port: 80,
|
Port: 80,
|
||||||
})
|
})
|
||||||
|
|
||||||
suite.d.DialContext(suite.ctx, "tcp", "127.0.0.1")
|
suite.d.DialContext(suite.ctx, "tcp", "127.0.0.1") // nolint: errcheck
|
||||||
suite.d.DialContext(suite.ctx, "tcp", "127.0.0.1")
|
suite.d.DialContext(suite.ctx, "tcp", "127.0.0.1") // nolint: errcheck
|
||||||
suite.d.DialContext(suite.ctx, "tcp", "127.0.0.1")
|
suite.d.DialContext(suite.ctx, "tcp", "127.0.0.1") // nolint: errcheck
|
||||||
suite.d.DialContext(suite.ctx, "tcp", "127.0.0.1")
|
suite.d.DialContext(suite.ctx, "tcp", "127.0.0.1") // nolint: errcheck
|
||||||
|
|
||||||
time.Sleep(500 * time.Millisecond)
|
time.Sleep(500 * time.Millisecond)
|
||||||
|
|
||||||
@@ -135,5 +135,6 @@ func (suite *CircuitBreakerTestSuite) TestHalfOpen() {
|
|||||||
}
|
}
|
||||||
|
|
||||||
func TestCircuitBreaker(t *testing.T) {
|
func TestCircuitBreaker(t *testing.T) {
|
||||||
|
t.Parallel()
|
||||||
suite.Run(t, &CircuitBreakerTestSuite{})
|
suite.Run(t, &CircuitBreakerTestSuite{})
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -68,12 +68,16 @@ func (suite *DefaultDialerTestSuite) TestConnectOk() {
|
|||||||
func (suite *DefaultDialerTestSuite) TestHTTPRequest() {
|
func (suite *DefaultDialerTestSuite) TestHTTPRequest() {
|
||||||
httpClient := suite.MakeHTTPClient(suite.d)
|
httpClient := suite.MakeHTTPClient(suite.d)
|
||||||
|
|
||||||
resp, err := httpClient.Get(suite.MakeURL("/get"))
|
resp, err := httpClient.Get(suite.MakeURL("/get")) // nolint: noctx
|
||||||
|
if err == nil {
|
||||||
|
defer resp.Body.Close()
|
||||||
|
}
|
||||||
|
|
||||||
suite.NoError(err)
|
suite.NoError(err)
|
||||||
suite.Equal(http.StatusOK, resp.StatusCode)
|
suite.Equal(http.StatusOK, resp.StatusCode)
|
||||||
}
|
}
|
||||||
|
|
||||||
func TestDefaultDialer(t *testing.T) {
|
func TestDefaultDialer(t *testing.T) {
|
||||||
|
t.Parallel()
|
||||||
suite.Run(t, &DefaultDialerTestSuite{})
|
suite.Run(t, &DefaultDialerTestSuite{})
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -7,7 +7,6 @@ import (
|
|||||||
"net/http/httptest"
|
"net/http/httptest"
|
||||||
"net/url"
|
"net/url"
|
||||||
"strings"
|
"strings"
|
||||||
"time"
|
|
||||||
|
|
||||||
"github.com/9seconds/mtg/v2/mtglib/network"
|
"github.com/9seconds/mtg/v2/mtglib/network"
|
||||||
socks5 "github.com/armon/go-socks5"
|
socks5 "github.com/armon/go-socks5"
|
||||||
@@ -15,46 +14,6 @@ import (
|
|||||||
"github.com/stretchr/testify/mock"
|
"github.com/stretchr/testify/mock"
|
||||||
)
|
)
|
||||||
|
|
||||||
type ConnMock struct {
|
|
||||||
mock.Mock
|
|
||||||
}
|
|
||||||
|
|
||||||
func (c *ConnMock) Read(b []byte) (int, error) {
|
|
||||||
args := c.Called(b)
|
|
||||||
|
|
||||||
return args.Int(0), args.Error(1)
|
|
||||||
}
|
|
||||||
|
|
||||||
func (c *ConnMock) Write(b []byte) (int, error) {
|
|
||||||
args := c.Called(b)
|
|
||||||
|
|
||||||
return args.Int(0), args.Error(1)
|
|
||||||
}
|
|
||||||
|
|
||||||
func (c *ConnMock) Close() error {
|
|
||||||
return c.Called().Error(0)
|
|
||||||
}
|
|
||||||
|
|
||||||
func (c *ConnMock) LocalAddr() net.Addr {
|
|
||||||
return c.Called().Get(0).(net.Addr)
|
|
||||||
}
|
|
||||||
|
|
||||||
func (c *ConnMock) RemoteAddr() net.Addr {
|
|
||||||
return c.Called().Get(0).(net.Addr)
|
|
||||||
}
|
|
||||||
|
|
||||||
func (c *ConnMock) SetDeadline(t time.Time) error {
|
|
||||||
return c.Called(t).Error(0)
|
|
||||||
}
|
|
||||||
|
|
||||||
func (c *ConnMock) SetReadDeadline(t time.Time) error {
|
|
||||||
return c.Called(t).Error(0)
|
|
||||||
}
|
|
||||||
|
|
||||||
func (c *ConnMock) SetWriteDeadline(t time.Time) error {
|
|
||||||
return c.Called(t).Error(0)
|
|
||||||
}
|
|
||||||
|
|
||||||
type DialerMock struct {
|
type DialerMock struct {
|
||||||
mock.Mock
|
mock.Mock
|
||||||
}
|
}
|
||||||
@@ -112,7 +71,7 @@ func (suite *Socks5ServerTestSuite) SetupSuite() {
|
|||||||
},
|
},
|
||||||
})
|
})
|
||||||
|
|
||||||
go suite.socks5Server.Serve(suite.socks5Listener)
|
go suite.socks5Server.Serve(suite.socks5Listener) // nolint: errcheck
|
||||||
}
|
}
|
||||||
|
|
||||||
func (suite *Socks5ServerTestSuite) TearDownSuite() {
|
func (suite *Socks5ServerTestSuite) TearDownSuite() {
|
||||||
|
|||||||
@@ -23,6 +23,7 @@ func (l loadBalancedSocks5Dialer) DialContext(ctx context.Context, network, addr
|
|||||||
|
|
||||||
for i := start; i != start || !moved; i = (i + 1) % length {
|
for i := start; i != start || !moved; i = (i + 1) % length {
|
||||||
moved = true
|
moved = true
|
||||||
|
|
||||||
if conn, err := l.dialers[i].DialContext(ctx, network, address); err == nil {
|
if conn, err := l.dialers[i].DialContext(ctx, network, address); err == nil {
|
||||||
return conn, nil
|
return conn, nil
|
||||||
}
|
}
|
||||||
@@ -32,7 +33,7 @@ func (l loadBalancedSocks5Dialer) DialContext(ctx context.Context, network, addr
|
|||||||
}
|
}
|
||||||
|
|
||||||
func NewLoadBalancedSocks5Dialer(baseDialer Dialer, proxyURLs []*url.URL) (Dialer, error) {
|
func NewLoadBalancedSocks5Dialer(baseDialer Dialer, proxyURLs []*url.URL) (Dialer, error) {
|
||||||
var dialers []Dialer
|
dialers := make([]Dialer, 0, len(proxyURLs))
|
||||||
|
|
||||||
for _, u := range proxyURLs {
|
for _, u := range proxyURLs {
|
||||||
dialer, err := NewSocks5Dialer(newProxyDialer(baseDialer, u), u)
|
dialer, err := NewSocks5Dialer(newProxyDialer(baseDialer, u), u)
|
||||||
|
|||||||
@@ -77,12 +77,16 @@ func (suite *LoadBalancedSocks5TestSuite) TestCannotDial() {
|
|||||||
}
|
}
|
||||||
|
|
||||||
func (suite *LoadBalancedSocks5TestSuite) TestDialOk() {
|
func (suite *LoadBalancedSocks5TestSuite) TestDialOk() {
|
||||||
resp, err := suite.httpClient.Get(suite.MakeURL("/get"))
|
resp, err := suite.httpClient.Get(suite.MakeURL("/get")) // nolint: noctx
|
||||||
|
if err == nil {
|
||||||
|
defer resp.Body.Close()
|
||||||
|
}
|
||||||
|
|
||||||
suite.NoError(err)
|
suite.NoError(err)
|
||||||
suite.Equal(http.StatusOK, resp.StatusCode)
|
suite.Equal(http.StatusOK, resp.StatusCode)
|
||||||
}
|
}
|
||||||
|
|
||||||
func TestLoadBalancedSocks5(t *testing.T) {
|
func TestLoadBalancedSocks5(t *testing.T) {
|
||||||
|
t.Parallel()
|
||||||
suite.Run(t, &LoadBalancedSocks5TestSuite{})
|
suite.Run(t, &LoadBalancedSocks5TestSuite{})
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -48,8 +48,9 @@ func (suite *ProxyDialerTestSuite) TestOpenThreshold() {
|
|||||||
params := []string{"-30", "aaa", "1.0", "-1.0"}
|
params := []string{"-30", "aaa", "1.0", "-1.0"}
|
||||||
|
|
||||||
for _, v := range params {
|
for _, v := range params {
|
||||||
|
param := v
|
||||||
suite.T().Run(fmt.Sprintf("param=%s", v), func(t *testing.T) {
|
suite.T().Run(fmt.Sprintf("param=%s", v), func(t *testing.T) {
|
||||||
query.Set("open_threshold", v)
|
query.Set("open_threshold", param)
|
||||||
|
|
||||||
suite.u.RawQuery = query.Encode()
|
suite.u.RawQuery = query.Encode()
|
||||||
d := newProxyDialer(&DialerMock{}, suite.u).(*circuitBreakerDialer)
|
d := newProxyDialer(&DialerMock{}, suite.u).(*circuitBreakerDialer)
|
||||||
@@ -64,8 +65,9 @@ func (suite *ProxyDialerTestSuite) TestHalfOpenTimeout() {
|
|||||||
params := []string{"-30", "30", "aaa", "-3.0", "3.0"}
|
params := []string{"-30", "30", "aaa", "-3.0", "3.0"}
|
||||||
|
|
||||||
for _, v := range params {
|
for _, v := range params {
|
||||||
|
param := v
|
||||||
suite.T().Run(fmt.Sprintf("param=%s", v), func(t *testing.T) {
|
suite.T().Run(fmt.Sprintf("param=%s", v), func(t *testing.T) {
|
||||||
query.Set("half_open_timeout", v)
|
query.Set("half_open_timeout", param)
|
||||||
|
|
||||||
suite.u.RawQuery = query.Encode()
|
suite.u.RawQuery = query.Encode()
|
||||||
d := newProxyDialer(&DialerMock{}, suite.u).(*circuitBreakerDialer)
|
d := newProxyDialer(&DialerMock{}, suite.u).(*circuitBreakerDialer)
|
||||||
@@ -80,8 +82,9 @@ func (suite *ProxyDialerTestSuite) TestResetFailuresTimeout() {
|
|||||||
params := []string{"-30", "30", "aaa", "-3.0", "3.0"}
|
params := []string{"-30", "30", "aaa", "-3.0", "3.0"}
|
||||||
|
|
||||||
for _, v := range params {
|
for _, v := range params {
|
||||||
|
param := v
|
||||||
suite.T().Run(fmt.Sprintf("param=%s", v), func(t *testing.T) {
|
suite.T().Run(fmt.Sprintf("param=%s", v), func(t *testing.T) {
|
||||||
query.Set("reset_failures_timeout", v)
|
query.Set("reset_failures_timeout", param)
|
||||||
|
|
||||||
suite.u.RawQuery = query.Encode()
|
suite.u.RawQuery = query.Encode()
|
||||||
d := newProxyDialer(&DialerMock{}, suite.u).(*circuitBreakerDialer)
|
d := newProxyDialer(&DialerMock{}, suite.u).(*circuitBreakerDialer)
|
||||||
@@ -92,5 +95,6 @@ func (suite *ProxyDialerTestSuite) TestResetFailuresTimeout() {
|
|||||||
}
|
}
|
||||||
|
|
||||||
func TestProxyDialer(t *testing.T) {
|
func TestProxyDialer(t *testing.T) {
|
||||||
|
t.Parallel()
|
||||||
suite.Run(t, &ProxyDialerTestSuite{})
|
suite.Run(t, &ProxyDialerTestSuite{})
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -33,7 +33,10 @@ func (suite *Socks5TestSuite) TestRequestFailed() {
|
|||||||
dialer, _ := network.NewSocks5Dialer(suite.d, proxyURL)
|
dialer, _ := network.NewSocks5Dialer(suite.d, proxyURL)
|
||||||
httpClient := suite.MakeHTTPClient(dialer)
|
httpClient := suite.MakeHTTPClient(dialer)
|
||||||
|
|
||||||
_, err := httpClient.Get(suite.MakeURL("/get"))
|
resp, err := httpClient.Get(suite.MakeURL("/get")) // nolint: noctx
|
||||||
|
if err == nil {
|
||||||
|
defer resp.Body.Close()
|
||||||
|
}
|
||||||
|
|
||||||
suite.Error(err)
|
suite.Error(err)
|
||||||
}
|
}
|
||||||
@@ -43,12 +46,16 @@ func (suite *Socks5TestSuite) TestRequestOk() {
|
|||||||
dialer, _ := network.NewSocks5Dialer(suite.d, proxyURL)
|
dialer, _ := network.NewSocks5Dialer(suite.d, proxyURL)
|
||||||
httpClient := suite.MakeHTTPClient(dialer)
|
httpClient := suite.MakeHTTPClient(dialer)
|
||||||
|
|
||||||
resp, err := httpClient.Get(suite.MakeURL("/get"))
|
resp, err := httpClient.Get(suite.MakeURL("/get")) // nolint: noctx
|
||||||
|
if err == nil {
|
||||||
|
defer resp.Body.Close()
|
||||||
|
}
|
||||||
|
|
||||||
suite.NoError(err)
|
suite.NoError(err)
|
||||||
suite.Equal(http.StatusOK, resp.StatusCode)
|
suite.Equal(http.StatusOK, resp.StatusCode)
|
||||||
}
|
}
|
||||||
|
|
||||||
func TestSocks5TestSuite(t *testing.T) {
|
func TestSocks5TestSuite(t *testing.T) {
|
||||||
|
t.Parallel()
|
||||||
suite.Run(t, &Socks5TestSuite{})
|
suite.Run(t, &Socks5TestSuite{})
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user