浏览代码

test: add more tests (#1119)

Kevin Wan 3 年之前
父节点
当前提交
9b114e3251
共有 1 个文件被更改,包括 34 次插入5 次删除
  1. 34 5
      zrpc/internal/rpcserver_test.go

+ 34 - 5
zrpc/internal/rpcserver_test.go

@@ -1,16 +1,45 @@
 package internal
 
 import (
+	"sync"
 	"testing"
 
 	"github.com/stretchr/testify/assert"
 	"github.com/tal-tech/go-zero/core/stat"
+	"github.com/tal-tech/go-zero/zrpc/internal/mock"
+	"google.golang.org/grpc"
 )
 
-func TestWithMetrics(t *testing.T) {
+func TestRpcServer(t *testing.T) {
 	metrics := stat.NewMetrics("foo")
-	opt := WithMetrics(metrics)
-	var options rpcServerOptions
-	opt(&options)
-	assert.Equal(t, metrics, options.metrics)
+	server := NewRpcServer("localhost:54321", WithMetrics(metrics))
+	server.SetName("mock")
+	var wg sync.WaitGroup
+	var grpcServer *grpc.Server
+	var lock sync.Mutex
+	wg.Add(1)
+	go func() {
+		err := server.Start(func(server *grpc.Server) {
+			lock.Lock()
+			mock.RegisterDepositServiceServer(server, new(mock.DepositServer))
+			grpcServer = server
+			lock.Unlock()
+			wg.Done()
+		})
+		assert.Nil(t, err)
+	}()
+
+	wg.Wait()
+	lock.Lock()
+	grpcServer.GracefulStop()
+	lock.Unlock()
+}
+
+func TestRpcServer_WithBadAddress(t *testing.T) {
+	server := NewRpcServer("localhost:111111")
+	server.SetName("mock")
+	err := server.Start(func(server *grpc.Server) {
+		mock.RegisterDepositServiceServer(server, new(mock.DepositServer))
+	})
+	assert.NotNil(t, err)
 }