Welcome to mirror list, hosted at ThFree Co, Russian Federation.

gitlab.com/gitlab-org/gitaly.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPatrick Steinhardt <psteinhardt@gitlab.com>2021-04-15 15:03:24 +0300
committerPatrick Steinhardt <psteinhardt@gitlab.com>2021-04-19 08:50:38 +0300
commit32c2eeb679160ba24e1aa6fa38fa6418a9ae2ff2 (patch)
tree63a817089088d88e72cc46ae1802c3c474dcfac0
parentbf27075ea5ea1b26eef72fb931b21a00950cb7ec (diff)
proxy: Use `t.Run()` to execute testcases
While the error propagation tests already set up table-driven tests with a nice description for each of the table entries, it's not using `t.Run()` to execute them. Refactor the testcase to use `t.Run()`.
-rw-r--r--internal/praefect/grpc-proxy/proxy/handler_test.go96
1 files changed, 49 insertions, 47 deletions
diff --git a/internal/praefect/grpc-proxy/proxy/handler_test.go b/internal/praefect/grpc-proxy/proxy/handler_test.go
index 874a96b0c..585dd647b 100644
--- a/internal/praefect/grpc-proxy/proxy/handler_test.go
+++ b/internal/praefect/grpc-proxy/proxy/handler_test.go
@@ -388,53 +388,55 @@ func TestProxyErrorPropagation(t *testing.T) {
},
},
} {
- tmpDir, clean := testhelper.TempDir(t)
- defer clean()
-
- backendListener, err := net.Listen("unix", filepath.Join(tmpDir, "backend"))
- require.NoError(t, err)
-
- backendServer := grpc.NewServer(grpc.UnknownServiceHandler(func(interface{}, grpc.ServerStream) error {
- return tc.backendError
- }))
- go func() { backendServer.Serve(backendListener) }()
- defer backendServer.Stop()
-
- ctx, cancel := testhelper.Context()
- defer cancel()
-
- backendClientConn, err := grpc.DialContext(ctx, "unix://"+backendListener.Addr().String(),
- grpc.WithInsecure(), grpc.WithDefaultCallOptions(grpc.ForceCodec(proxy.NewCodec())))
- require.NoError(t, err)
-
- proxyListener, err := net.Listen("unix", filepath.Join(tmpDir, "proxy"))
- require.NoError(t, err)
-
- proxyServer := grpc.NewServer(
- grpc.CustomCodec(proxy.NewCodec()),
- grpc.UnknownServiceHandler(proxy.TransparentHandler(func(ctx context.Context, fullMethodName string, peeker proxy.StreamPeeker) (*proxy.StreamParameters, error) {
- return proxy.NewStreamParameters(
- proxy.Destination{
- Ctx: ctx,
- Conn: backendClientConn,
- ErrHandler: tc.errHandler,
- },
- nil,
- func() error { return tc.requestFinalizerError },
- nil,
- ), tc.directorError
- })),
- )
-
- go func() { proxyServer.Serve(proxyListener) }()
- defer proxyServer.Stop()
-
- proxyClientConn, err := grpc.DialContext(ctx, "unix://"+proxyListener.Addr().String(), grpc.WithInsecure())
- require.NoError(t, err)
-
- resp, err := pb.NewTestServiceClient(proxyClientConn).Ping(ctx, &pb.PingRequest{})
- require.Equal(t, tc.returnedError, err)
- require.Nil(t, resp)
+ t.Run(tc.desc, func(t *testing.T) {
+ tmpDir, clean := testhelper.TempDir(t)
+ defer clean()
+
+ backendListener, err := net.Listen("unix", filepath.Join(tmpDir, "backend"))
+ require.NoError(t, err)
+
+ backendServer := grpc.NewServer(grpc.UnknownServiceHandler(func(interface{}, grpc.ServerStream) error {
+ return tc.backendError
+ }))
+ go func() { backendServer.Serve(backendListener) }()
+ defer backendServer.Stop()
+
+ ctx, cancel := testhelper.Context()
+ defer cancel()
+
+ backendClientConn, err := grpc.DialContext(ctx, "unix://"+backendListener.Addr().String(),
+ grpc.WithInsecure(), grpc.WithDefaultCallOptions(grpc.ForceCodec(proxy.NewCodec())))
+ require.NoError(t, err)
+
+ proxyListener, err := net.Listen("unix", filepath.Join(tmpDir, "proxy"))
+ require.NoError(t, err)
+
+ proxyServer := grpc.NewServer(
+ grpc.CustomCodec(proxy.NewCodec()),
+ grpc.UnknownServiceHandler(proxy.TransparentHandler(func(ctx context.Context, fullMethodName string, peeker proxy.StreamPeeker) (*proxy.StreamParameters, error) {
+ return proxy.NewStreamParameters(
+ proxy.Destination{
+ Ctx: ctx,
+ Conn: backendClientConn,
+ ErrHandler: tc.errHandler,
+ },
+ nil,
+ func() error { return tc.requestFinalizerError },
+ nil,
+ ), tc.directorError
+ })),
+ )
+
+ go func() { proxyServer.Serve(proxyListener) }()
+ defer proxyServer.Stop()
+
+ proxyClientConn, err := grpc.DialContext(ctx, "unix://"+proxyListener.Addr().String(), grpc.WithInsecure())
+ require.NoError(t, err)
+
+ resp, err := pb.NewTestServiceClient(proxyClientConn).Ping(ctx, &pb.PingRequest{})
+ require.Equal(t, tc.returnedError, err)
+ require.Nil(t, resp)
+ })
}
}