diff --git a/grpcall_test.go b/grpcall_test.go index 1e3cd47..bba6ce0 100644 --- a/grpcall_test.go +++ b/grpcall_test.go @@ -4,6 +4,7 @@ import ( "fmt" "os" "testing" + "time" "google.golang.org/grpc" ) @@ -18,12 +19,11 @@ func TestMain(m *testing.M) { gc = _gc } - defer gc.Close() - // 执行测试 code := m.Run() // 在这里执行一些清理工作,例如关闭数据库连接等 + gc.Close() // 退出测试 os.Exit(code) @@ -41,6 +41,7 @@ func TestGetServiceMethods(t *testing.T) { } } +// 数据请求测试 func TestInvokeUnary(t *testing.T) { if resp, err := gc.Invoke("User.UserResourceStatus", "TestInt64Value", `123`, nil); err != nil { t.Error(err) @@ -49,6 +50,7 @@ func TestInvokeUnary(t *testing.T) { } } +// 服务流测试 func TestInvokeServStream(t *testing.T) { if resp, err := gc.Invoke("User.UserResourceStatus", "GetEvent", `{}`, nil); err != nil { t.Error(err) @@ -75,6 +77,8 @@ func TestInvokeServStream(t *testing.T) { <-flag } } + +// 双向流测试 func TestInvokeBidiStream(t *testing.T) { if resp, err := gc.Invoke("User.UserResourceStatus", "TestBidiStream", `"hello"`, nil); err != nil { t.Error(err) @@ -98,6 +102,8 @@ func TestInvokeBidiStream(t *testing.T) { } flag <- true return + case <-time.After(time.Second): + resp.Cancel() } } }()