Răsfoiți Sursa

add more tests

kevin 4 ani în urmă
părinte
comite
0b6a13fe84

+ 31 - 0
rpcx/internal/serverinterceptors/crashinterceptor_test.go

@@ -0,0 +1,31 @@
+package serverinterceptors
+
+import (
+	"context"
+	"testing"
+
+	"github.com/stretchr/testify/assert"
+	"github.com/tal-tech/go-zero/core/logx"
+	"google.golang.org/grpc"
+)
+
+func init() {
+	logx.Disable()
+}
+
+func TestStreamCrashInterceptor(t *testing.T) {
+	err := StreamCrashInterceptor(nil, nil, nil, func(
+		srv interface{}, stream grpc.ServerStream) error {
+		panic("mock panic")
+	})
+	assert.NotNil(t, err)
+}
+
+func TestUnaryCrashInterceptor(t *testing.T) {
+	interceptor := UnaryCrashInterceptor()
+	_, err := interceptor(context.Background(), nil, nil, func(
+		ctx context.Context, req interface{}) (interface{}, error) {
+		panic("mock panic")
+	})
+	assert.NotNil(t, err)
+}

+ 2 - 2
rpcx/internal/serverinterceptors/prommetricinterceptor.go

@@ -33,12 +33,12 @@ var (
 )
 
 func UnaryPromMetricInterceptor() grpc.UnaryServerInterceptor {
-	return func(ctx context.Context, req interface{}, info *grpc.UnaryServerInfo, handler grpc.UnaryHandler) (interface{}, error) {
+	return func(ctx context.Context, req interface{}, info *grpc.UnaryServerInfo, handler grpc.UnaryHandler) (
+		interface{}, error) {
 		startTime := timex.Now()
 		resp, err := handler(ctx, req)
 		metricServerReqDur.Observe(int64(timex.Since(startTime)/time.Millisecond), info.FullMethod)
 		metricServerReqCodeTotal.Inc(info.FullMethod, strconv.Itoa(int(status.Code(err))))
 		return resp, err
 	}
-
 }

+ 22 - 0
rpcx/internal/serverinterceptors/statinterceptor_test.go

@@ -0,0 +1,22 @@
+package serverinterceptors
+
+import (
+	"context"
+	"testing"
+
+	"github.com/stretchr/testify/assert"
+	"github.com/tal-tech/go-zero/core/stat"
+	"google.golang.org/grpc"
+)
+
+func TestUnaryStatInterceptor(t *testing.T) {
+	metrics := stat.NewMetrics("mock")
+	interceptor := UnaryStatInterceptor(metrics)
+	_, err := interceptor(context.Background(), nil, &grpc.UnaryServerInfo{
+		FullMethod: "/",
+	}, func(
+		ctx context.Context, req interface{}) (interface{}, error) {
+		return nil, nil
+	})
+	assert.Nil(t, err)
+}

+ 21 - 0
rpcx/internal/serverinterceptors/timeoutinterceptor_test.go

@@ -0,0 +1,21 @@
+package serverinterceptors
+
+import (
+	"context"
+	"testing"
+	"time"
+
+	"github.com/stretchr/testify/assert"
+	"google.golang.org/grpc"
+)
+
+func TestUnaryTimeoutInterceptor(t *testing.T) {
+	interceptor := UnaryTimeoutInterceptor(time.Millisecond * 10)
+	_, err := interceptor(context.Background(), nil, &grpc.UnaryServerInfo{
+		FullMethod: "/",
+	}, func(
+		ctx context.Context, req interface{}) (interface{}, error) {
+		return nil, nil
+	})
+	assert.Nil(t, err)
+}