| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172 |
- package network_test
-
- import (
- "context"
- "net/http"
- "testing"
-
- "github.com/9seconds/mtg/v2/network"
- "github.com/stretchr/testify/suite"
- )
-
- type DefaultDialerTestSuite struct {
- suite.Suite
- HTTPServerTestSuite
-
- d network.Dialer
- }
-
- func (suite *DefaultDialerTestSuite) SetupSuite() {
- suite.HTTPServerTestSuite.SetupSuite()
-
- d, err := network.NewDefaultDialer(0, 0)
- suite.NoError(err)
-
- suite.d = d
- }
-
- func (suite *DefaultDialerTestSuite) TestNegativeTimeout() {
- _, err := network.NewDefaultDialer(-1, 0)
- suite.Error(err)
- }
-
- func (suite *DefaultDialerTestSuite) TestUnsupportedProtocol() {
- _, err := suite.d.DialContext(context.Background(),
- "udp",
- suite.HTTPServerAddress())
- suite.Error(err)
- }
-
- func (suite *DefaultDialerTestSuite) TestCannotDial() {
- _, err := suite.d.DialContext(context.Background(),
- "tcp",
- suite.HTTPServerAddress()+suite.HTTPServerAddress())
- suite.Error(err)
- }
-
- func (suite *DefaultDialerTestSuite) TestConnectOk() {
- conn, err := suite.d.DialContext(context.Background(),
- "tcp",
- suite.HTTPServerAddress())
- suite.NoError(err)
- suite.NotNil(conn)
-
- conn.Close() //nolint: errcheck
- }
-
- func (suite *DefaultDialerTestSuite) TestHTTPRequest() {
- httpClient := suite.MakeHTTPClient(suite.d)
-
- resp, err := httpClient.Get(suite.MakeURL("/get")) //nolint: noctx
- if err == nil {
- defer resp.Body.Close() //nolint: errcheck
- }
-
- suite.NoError(err)
- suite.Equal(http.StatusOK, resp.StatusCode)
- }
-
- func TestDefaultDialer(t *testing.T) {
- t.Parallel()
- suite.Run(t, &DefaultDialerTestSuite{})
- }
|