Skip to content

Commit

Permalink
chore: Change client test path to try to avoid dependency creep when …
Browse files Browse the repository at this point in the history
…importing client
  • Loading branch information
felipejfc committed Sep 1, 2023
1 parent fe4ef7d commit 1cbf8e7
Show file tree
Hide file tree
Showing 3 changed files with 24 additions and 22 deletions.
32 changes: 16 additions & 16 deletions client/client.go
Original file line number Diff line number Diff line change
Expand Up @@ -66,7 +66,7 @@ type pendingRequest struct {

// Client struct
type Client struct {
conn net.Conn
Conn net.Conn
Connected bool
packetEncoder codec.PacketEncoder
packetDecoder codec.PacketDecoder
Expand All @@ -77,7 +77,7 @@ type Client struct {
pendingReqMutex sync.Mutex
requestTimeout time.Duration
closeChan chan struct{}
nextID uint32
NextID uint32
messageEncoder message.Encoder
clientHandshakeData *session.HandshakeData
}
Expand Down Expand Up @@ -146,7 +146,7 @@ func (c *Client) sendHandshakeRequest() error {
return err
}

_, err = c.conn.Write(p)
_, err = c.Conn.Write(p)
return err
}

Expand Down Expand Up @@ -184,7 +184,7 @@ func (c *Client) handleHandshakeResponse() error {
if err != nil {
return err
}
_, err = c.conn.Write(p)
_, err = c.Conn.Write(p)
if err != nil {
return err
}
Expand All @@ -194,13 +194,13 @@ func (c *Client) handleHandshakeResponse() error {
go c.sendHeartbeats(handshake.Sys.Heartbeat)
go c.handleServerMessages()
go c.handlePackets()
go c.pendingRequestsReaper()
go c.PendingRequestsReaper()

return nil
}

// pendingRequestsReaper delete timedout requests
func (c *Client) pendingRequestsReaper() {
// PendingRequestsReaper delete timedout requests
func (c *Client) PendingRequestsReaper() {
ticker := time.NewTicker(1 * time.Second)
defer ticker.Stop()
for {
Expand Down Expand Up @@ -276,7 +276,7 @@ func (c *Client) readPackets(buf *bytes.Buffer) ([]*packet.Packet, error) {
var err error

for n == len(data) {
n, err = c.conn.Read(data)
n, err = c.Conn.Read(data)
if err != nil {
return nil, err
}
Expand Down Expand Up @@ -321,7 +321,7 @@ func (c *Client) sendHeartbeats(interval int) {
select {
case <-t.C:
p, _ := c.packetEncoder.Encode(packet.Heartbeat, []byte{})
_, err := c.conn.Write(p)
_, err := c.Conn.Write(p)
if err != nil {
logger.Log.Errorf("error sending heartbeat to server: %s", err.Error())
return
Expand All @@ -337,7 +337,7 @@ func (c *Client) Disconnect() {
if c.Connected {
c.Connected = false
close(c.closeChan)
c.conn.Close()
c.Conn.Close()
}
}

Expand All @@ -354,7 +354,7 @@ func (c *Client) ConnectTo(addr string, tlsConfig ...*tls.Config) error {
if err != nil {
return err
}
c.conn = conn
c.Conn = conn
c.IncomingMsgChan = make(chan *message.Message, 10)

if err = c.handleHandshake(); err != nil {
Expand All @@ -381,7 +381,7 @@ func (c *Client) ConnectToWS(addr string, path string, tlsConfig ...*tls.Config)
return err
}

c.conn, err = acceptor.NewWSConn(conn)
c.Conn, err = acceptor.NewWSConn(conn)
if err != nil {
return err
}
Expand Down Expand Up @@ -419,7 +419,7 @@ func (c *Client) SendNotify(route string, data []byte) error {
return err
}

func (c *Client) buildPacket(msg message.Message) ([]byte, error) {
func (c *Client) BuildPacket(msg message.Message) ([]byte, error) {
encMsg, err := c.messageEncoder.Encode(&msg)
if err != nil {
return nil, err
Expand All @@ -437,12 +437,12 @@ func (c *Client) sendMsg(msgType message.Type, route string, data []byte) (uint,
// TODO mount msg and encode
m := message.Message{
Type: msgType,
ID: uint(atomic.AddUint32(&c.nextID, 1)),
ID: uint(atomic.AddUint32(&c.NextID, 1)),
Route: route,
Data: data,
Err: false,
}
p, err := c.buildPacket(m)
p, err := c.BuildPacket(m)
if msgType == message.Request {
c.pendingChan <- true
c.pendingReqMutex.Lock()
Expand All @@ -458,6 +458,6 @@ func (c *Client) sendMsg(msgType message.Type, route string, data []byte) (uint,
if err != nil {
return m.ID, err
}
_, err = c.conn.Write(p)
_, err = c.Conn.Write(p)
return m.ID, err
}
13 changes: 7 additions & 6 deletions client/client_test.go → client/test/client_test.go
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
package client
package test

import (
"testing"
Expand All @@ -7,19 +7,20 @@ import (
"github.com/golang/mock/gomock"
"github.com/sirupsen/logrus"
"github.com/stretchr/testify/assert"
"github.com/topfreegames/pitaya/v2/client"
"github.com/topfreegames/pitaya/v2/conn/message"
"github.com/topfreegames/pitaya/v2/helpers"
"github.com/topfreegames/pitaya/v2/mocks"
)

func TestSendRequestShouldTimeout(t *testing.T) {
c := New(logrus.InfoLevel, 100*time.Millisecond)
c := client.New(logrus.InfoLevel, 100*time.Millisecond)
ctrl := gomock.NewController(t)
defer ctrl.Finish()

mockConn := mocks.NewMockPlayerConn(ctrl)
c.conn = mockConn
go c.pendingRequestsReaper()
c.Conn = mockConn
go c.PendingRequestsReaper()

route := "com.sometest.route"
data := []byte{0x02, 0x03, 0x04}
Expand All @@ -32,14 +33,14 @@ func TestSendRequestShouldTimeout(t *testing.T) {
Err: false,
}

pkt, err := c.buildPacket(m)
pkt, err := c.BuildPacket(m)
assert.NoError(t, err)

mockConn.EXPECT().Write(pkt)

c.IncomingMsgChan = make(chan *message.Message, 10)

c.nextID = 0
c.NextID = 0
c.SendRequest(route, data)

msg := helpers.ShouldEventuallyReceive(t, c.IncomingMsgChan, 2*time.Second).(*message.Message)
Expand Down
1 change: 1 addition & 0 deletions go.work.sum
Original file line number Diff line number Diff line change
Expand Up @@ -170,6 +170,7 @@ github.com/rogpeppe/go-internal v1.10.0/go.mod h1:UQnix2H7Ngw/k4C5ijL5+65zddjncj
github.com/spf13/afero v1.3.3/go.mod h1:5KUK8ByomD5Ti5Artl0RtHeI5pTF7MIDuXL3yY520V4=
github.com/spf13/afero v1.6.0/go.mod h1:Ai8FlHk4v/PARR026UzYexafAt9roJ7LcLMAmO6Z93I=
github.com/yuin/goldmark v1.4.13/go.mod h1:6yULJ656Px+3vBD8DxQVa3kxgyrAnzto9xy5taEt/CY=
go.etcd.io/gofail v0.1.0 h1:XItAMIhOojXFQMgrxjnd2EIIHun/d5qL0Pf7FzVTkFg=
go.opencensus.io v0.24.0/go.mod h1:vNK8G9p7aAivkbmorf4v+7Hgx+Zs0yY+0fOtgBfjQKo=
go.opentelemetry.io/proto/otlp v0.10.0/go.mod h1:zG20xCK0szZ1xdokeSOwEcmlXu+x9kkdRe6N1DhKcfU=
go.opentelemetry.io/proto/otlp v0.15.0 h1:h0bKrvdrT/9sBwEJ6iWUqT/N/xPcS66bL4u3isneJ6w=
Expand Down

0 comments on commit 1cbf8e7

Please sign in to comment.