diff --git a/src/tcp/tcp.go b/src/tcp/tcp.go index 1e11b629..7ecf25a5 100644 --- a/src/tcp/tcp.go +++ b/src/tcp/tcp.go @@ -1,6 +1,8 @@ package tcp import ( + "bytes" + "fmt" "net" "sync" "time" @@ -209,3 +211,30 @@ func pipe(conn1 net.Conn, conn2 net.Conn) { } } } +func ConnectToTCPServer(address, room string) (c *comm.Comm, err error) { + c, err = comm.NewConnection("localhost:8081") + if err != nil { + return + } + data, err := c.Receive() + if err != nil { + return + } + if !bytes.Equal(data, []byte("ok")) { + err = fmt.Errorf("got bad response: %s", data) + return + } + err = c.Send([]byte(room)) + if err != nil { + return + } + data, err = c.Receive() + if err != nil { + return + } + if !bytes.Equal(data, []byte("ok")) { + err = fmt.Errorf("got bad response: %s", data) + return + } + return +} diff --git a/src/tcp/tcp_test.go b/src/tcp/tcp_test.go index 5f88b655..1a75ae44 100644 --- a/src/tcp/tcp_test.go +++ b/src/tcp/tcp_test.go @@ -1,12 +1,9 @@ package tcp import ( - "bytes" - "fmt" "testing" "time" - "github.com/schollz/croc/src/comm" "github.com/stretchr/testify/assert" ) @@ -34,35 +31,4 @@ func TestTCP(t *testing.T) { c1.Close() assert.True(t, c1.IsClosed()) - - time.Sleep(200 * time.Millisecond) - assert.True(t, c2.IsClosed()) -} - -func ConnectToTCPServer(address, room string) (c *comm.Comm, err error) { - c, err = comm.NewConnection("localhost:8081") - if err != nil { - return - } - data, err := c.Receive() - if err != nil { - return - } - if !bytes.Equal(data, []byte("ok")) { - err = fmt.Errorf("got bad response: %s", data) - return - } - err = c.Send([]byte(room)) - if err != nil { - return - } - data, err = c.Receive() - if err != nil { - return - } - if !bytes.Equal(data, []byte("ok")) { - err = fmt.Errorf("got bad response: %s", data) - return - } - return }