From d51716ff45c532f59d4b13214d50cdabe2a75514 Mon Sep 17 00:00:00 2001 From: yedf2 <120050102@qq.com> Date: Thu, 14 Jul 2022 12:08:32 +0800 Subject: [PATCH] add dtmserver panic test --- dtmsvr/svr.go | 1 + test/dtmsvr_test.go | 12 ++++++++++++ 2 files changed, 13 insertions(+) diff --git a/dtmsvr/svr.go b/dtmsvr/svr.go index 46df9ba..b5c7604 100644 --- a/dtmsvr/svr.go +++ b/dtmsvr/svr.go @@ -143,6 +143,7 @@ func grpcRecover(ctx context.Context, req interface{}, info *grpc.UnaryServerInf defer func() { if x := recover(); x != nil { rerr = status.Errorf(codes.Internal, "%v", x) + logger.Errorf("dtm server panic: %v", x) } }() res, rerr = handler(ctx, req) diff --git a/test/dtmsvr_test.go b/test/dtmsvr_test.go index 6aa712b..497a449 100644 --- a/test/dtmsvr_test.go +++ b/test/dtmsvr_test.go @@ -7,10 +7,13 @@ package test import ( + "context" "testing" "time" "github.com/dtm-labs/dtm/client/dtmcli/dtmimp" + "github.com/dtm-labs/dtm/client/dtmgrpc/dtmgimp" + "github.com/dtm-labs/dtm/client/dtmgrpc/dtmgpb" "github.com/dtm-labs/dtm/client/workflow" "github.com/dtm-labs/dtm/dtmsvr" "github.com/dtm-labs/dtm/dtmsvr/config" @@ -80,3 +83,12 @@ func TestUpdateBranchAsync(t *testing.T) { conf.UpdateBranchSync = 1 } + +func TestGrpcPanic(t *testing.T) { + gid := dtmimp.GetFuncName() + req := dtmgpb.DtmRequest{ + Gid: gid, + } + err := dtmgimp.MustGetGrpcConn(DtmGrpcServer, false).Invoke(context.Background(), "/dtmgimp.Dtm/"+"Submit", &req, nil) + assert.Error(t, err) +}