53 lines
928 B
Go
53 lines
928 B
Go
package znet
|
|
|
|
import (
|
|
"fmt"
|
|
"net"
|
|
"testing"
|
|
"time"
|
|
)
|
|
|
|
// ClientTest 模拟客户端
|
|
func ClientTest() {
|
|
fmt.Println("Client Test... start")
|
|
// 3s 之后发起测试请求,给服务器端开启服务的机会
|
|
time.Sleep(3 * time.Second)
|
|
|
|
conn, err := net.Dial("tcp", "127.0.0.1:7777")
|
|
if err != nil {
|
|
fmt.Println("client dial err:", err)
|
|
return
|
|
}
|
|
|
|
for {
|
|
_, err := conn.Write([]byte("hello Zinx"))
|
|
if err != nil {
|
|
fmt.Println("write error:", err)
|
|
return
|
|
}
|
|
|
|
buf := make([]byte, 512)
|
|
cnt, err := conn.Read(buf)
|
|
if err != nil {
|
|
fmt.Println("read buf error:", err)
|
|
return
|
|
}
|
|
|
|
fmt.Printf("server call back: %s, cnt = %d\n", string(buf[:cnt]), cnt)
|
|
|
|
time.Sleep(1 * time.Second)
|
|
}
|
|
}
|
|
|
|
// TestServer 服务器端测试
|
|
func TestServer(t *testing.T) {
|
|
// 创建一个 Server 句柄
|
|
s := NewServer("[Zinx V0.1]")
|
|
|
|
// 启动客户端测试
|
|
go ClientTest()
|
|
|
|
// 启动服务器
|
|
s.Serve()
|
|
}
|