chore(CI): Add testing

https://github.com/appleboy/gorush/issues/704

Signed-off-by: Bo-Yi.Wu <appleboy.tw@gmail.com>
This commit is contained in:
Bo-Yi.Wu
2022-12-20 22:20:24 +08:00
parent 4ef30a0cdc
commit b83b458147
5 changed files with 71 additions and 71 deletions

View File

@@ -1,53 +1,42 @@
package rpc
import (
"context"
"testing"
// const gRPCAddr = "localhost:9000"
"github.com/appleboy/gorush/config"
// func initTest() *config.ConfYaml {
// cfg, _ := config.LoadConf()
// cfg.Core.Mode = "test"
// return cfg
// }
"google.golang.org/grpc"
"google.golang.org/grpc/connectivity"
"google.golang.org/grpc/credentials/insecure"
)
// func TestGracefulShutDownGRPCServer(t *testing.T) {
// cfg := initTest()
// cfg.GRPC.Enabled = true
// cfg.GRPC.Port = "9000"
// cfg.Log.Format = "json"
const gRPCAddr = "localhost:9000"
// // Run gRPC server
// ctx, gRPCContextCancel := context.WithCancel(context.Background())
// go func() {
// if err := RunGRPCServer(ctx, cfg); err != nil {
// panic(err)
// }
// }()
func initTest() *config.ConfYaml {
cfg, _ := config.LoadConf()
cfg.Core.Mode = "test"
return cfg
}
// // gRPC client conn
// conn, err := grpc.Dial(
// gRPCAddr,
// grpc.WithTransportCredentials(insecure.NewCredentials()),
// grpc.WithDefaultCallOptions(grpc.WaitForReady(true)),
// ) // wait for server ready
// if err != nil {
// t.Error(err)
// }
func TestGracefulShutDownGRPCServer(t *testing.T) {
cfg := initTest()
cfg.GRPC.Enabled = true
cfg.GRPC.Port = "9000"
cfg.Log.Format = "json"
// // Stop gRPC server
// go gRPCContextCancel()
// Run gRPC server
ctx, gRPCContextCancel := context.WithCancel(context.Background())
go func() {
if err := RunGRPCServer(ctx, cfg); err != nil {
panic(err)
}
}()
// gRPC client conn
conn, err := grpc.Dial(
gRPCAddr,
grpc.WithTransportCredentials(insecure.NewCredentials()),
grpc.WithDefaultCallOptions(grpc.WaitForReady(true)),
) // wait for server ready
if err != nil {
t.Error(err)
}
// Stop gRPC server
go gRPCContextCancel()
// wait for client connection would be closed
for conn.GetState() != connectivity.TransientFailure {
}
conn.Close()
}
// // wait for client connection would be closed
// for conn.GetState() != connectivity.TransientFailure {
// }
// conn.Close()
// }