diff options
Diffstat (limited to 'internal/handler/exec_test.go')
-rw-r--r-- | internal/handler/exec_test.go | 42 |
1 files changed, 42 insertions, 0 deletions
diff --git a/internal/handler/exec_test.go b/internal/handler/exec_test.go new file mode 100644 index 0000000..6c7d3f5 --- /dev/null +++ b/internal/handler/exec_test.go @@ -0,0 +1,42 @@ +package handler + +import ( + "context" + "errors" + "testing" + + "github.com/stretchr/testify/require" + "google.golang.org/grpc" + + "gitlab.com/gitlab-org/gitlab-shell/internal/config" +) + +func makeHandler(t *testing.T, err error) func(context.Context, *grpc.ClientConn) (int32, error) { + return func(ctx context.Context, client *grpc.ClientConn) (int32, error) { + require.NotNil(t, ctx) + require.NotNil(t, client) + + return 0, err + } +} + +func TestRunGitalyCommand(t *testing.T) { + cmd := GitalyCommand{ + Config: &config.Config{}, + Address: "tcp://localhost:9999", + } + + err := cmd.RunGitalyCommand(makeHandler(t, nil)) + require.NoError(t, err) + + expectedErr := errors.New("error") + err = cmd.RunGitalyCommand(makeHandler(t, expectedErr)) + require.Equal(t, err, expectedErr) +} + +func TestMissingGitalyAddress(t *testing.T) { + cmd := GitalyCommand{Config: &config.Config{}} + + err := cmd.RunGitalyCommand(makeHandler(t, nil)) + require.EqualError(t, err, "no gitaly_address given") +} |