diff options
author | Pavlo Strokov <pstrokov@gitlab.com> | 2022-09-27 11:04:57 +0300 |
---|---|---|
committer | Pavlo Strokov <pstrokov@gitlab.com> | 2022-10-24 09:24:30 +0300 |
commit | 90ac673d08c844a3236f0041e7f758be19a6ddef (patch) | |
tree | e4264bdc98750836b0aac427c84f2ab4516c0ad6 | |
parent | 7b2e60230e46506f33036127bc7195952b759bc0 (diff) |
wiki: Standardization of errors creation
Remove redundant prefix from error returned by RPC call.
Replace old %v with new %w for proper error wrapping.
Replace usage of status.Errorf() with helper.Err<StatusCode>f() to
make error creation more standard.
Return pre-defined ErrEmptyRepository instead of ad-hoc created
error.
Replace fmt.Errorf() with errors.New() if used without a reason.
-rw-r--r-- | internal/gitaly/service/wiki/find_page.go | 5 | ||||
-rw-r--r-- | internal/gitaly/service/wiki/find_page_test.go | 4 | ||||
-rw-r--r-- | internal/gitaly/service/wiki/update_page.go | 13 | ||||
-rw-r--r-- | internal/gitaly/service/wiki/util.go | 10 | ||||
-rw-r--r-- | internal/gitaly/service/wiki/write_page.go | 11 |
5 files changed, 20 insertions, 23 deletions
diff --git a/internal/gitaly/service/wiki/find_page.go b/internal/gitaly/service/wiki/find_page.go index 2abb0d231..117a6e682 100644 --- a/internal/gitaly/service/wiki/find_page.go +++ b/internal/gitaly/service/wiki/find_page.go @@ -6,16 +6,15 @@ import ( gitalyerrors "gitlab.com/gitlab-org/gitaly/v15/internal/errors" "gitlab.com/gitlab-org/gitaly/v15/internal/git" "gitlab.com/gitlab-org/gitaly/v15/internal/gitaly/rubyserver" + "gitlab.com/gitlab-org/gitaly/v15/internal/helper" "gitlab.com/gitlab-org/gitaly/v15/proto/go/gitalypb" - "google.golang.org/grpc/codes" - "google.golang.org/grpc/status" ) func (s *server) WikiFindPage(request *gitalypb.WikiFindPageRequest, stream gitalypb.WikiService_WikiFindPageServer) error { ctx := stream.Context() if err := validateWikiFindPage(request); err != nil { - return status.Errorf(codes.InvalidArgument, "WikiFindPage: %v", err) + return helper.ErrInvalidArgument(err) } client, err := s.ruby.WikiServiceClient(ctx) diff --git a/internal/gitaly/service/wiki/find_page_test.go b/internal/gitaly/service/wiki/find_page_test.go index 1556955b9..b4fc46ae3 100644 --- a/internal/gitaly/service/wiki/find_page_test.go +++ b/internal/gitaly/service/wiki/find_page_test.go @@ -396,13 +396,13 @@ func TestFailedWikiFindPageDueToValidation(t *testing.T) { { desc: "empty page path", req: &gitalypb.WikiFindPageRequest{Repository: wikiRepo, Title: nil}, - expErr: status.Error(codes.InvalidArgument, "WikiFindPage: empty Title"), + expErr: status.Error(codes.InvalidArgument, "empty Title"), }, { desc: "repository not provided", req: &gitalypb.WikiFindPageRequest{Repository: nil}, expErr: status.Error(codes.InvalidArgument, testhelper.GitalyOrPraefect( - "WikiFindPage: empty Repository", + "empty Repository", "repo scoped: empty Repository", )), }, diff --git a/internal/gitaly/service/wiki/update_page.go b/internal/gitaly/service/wiki/update_page.go index 9122c8d4e..aafeed912 100644 --- a/internal/gitaly/service/wiki/update_page.go +++ b/internal/gitaly/service/wiki/update_page.go @@ -1,13 +1,12 @@ package wiki import ( - "fmt" + "errors" gitalyerrors "gitlab.com/gitlab-org/gitaly/v15/internal/errors" "gitlab.com/gitlab-org/gitaly/v15/internal/gitaly/rubyserver" + "gitlab.com/gitlab-org/gitaly/v15/internal/helper" "gitlab.com/gitlab-org/gitaly/v15/proto/go/gitalypb" - "google.golang.org/grpc/codes" - "google.golang.org/grpc/status" ) func (s *server) WikiUpdatePage(stream gitalypb.WikiService_WikiUpdatePageServer) error { @@ -17,7 +16,7 @@ func (s *server) WikiUpdatePage(stream gitalypb.WikiService_WikiUpdatePageServer } if err := validateWikiUpdatePageRequest(firstRequest); err != nil { - return status.Errorf(codes.InvalidArgument, "WikiUpdatePage: %v", err) + return helper.ErrInvalidArgument(err) } ctx := stream.Context() @@ -66,15 +65,15 @@ func validateWikiUpdatePageRequest(request *gitalypb.WikiUpdatePageRequest) erro return gitalyerrors.ErrEmptyRepository } if len(request.GetPagePath()) == 0 { - return fmt.Errorf("empty Page Path") + return errors.New("empty Page Path") } if len(request.GetTitle()) == 0 { - return fmt.Errorf("empty Title") + return errors.New("empty Title") } if len(request.GetFormat()) == 0 { - return fmt.Errorf("empty Format") + return errors.New("empty Format") } return validateRequestCommitDetails(request) diff --git a/internal/gitaly/service/wiki/util.go b/internal/gitaly/service/wiki/util.go index d9786040f..e1226741b 100644 --- a/internal/gitaly/service/wiki/util.go +++ b/internal/gitaly/service/wiki/util.go @@ -1,7 +1,7 @@ package wiki import ( - "fmt" + "errors" "gitlab.com/gitlab-org/gitaly/v15/proto/go/gitalypb" ) @@ -13,19 +13,19 @@ type requestWithCommitDetails interface { func validateRequestCommitDetails(request requestWithCommitDetails) error { commitDetails := request.GetCommitDetails() if commitDetails == nil { - return fmt.Errorf("empty CommitDetails") + return errors.New("empty CommitDetails") } if len(commitDetails.GetName()) == 0 { - return fmt.Errorf("empty CommitDetails.Name") + return errors.New("empty CommitDetails.Name") } if len(commitDetails.GetEmail()) == 0 { - return fmt.Errorf("empty CommitDetails.Email") + return errors.New("empty CommitDetails.Email") } if len(commitDetails.GetMessage()) == 0 { - return fmt.Errorf("empty CommitDetails.Message") + return errors.New("empty CommitDetails.Message") } return nil diff --git a/internal/gitaly/service/wiki/write_page.go b/internal/gitaly/service/wiki/write_page.go index 5316e3b51..e75fd6674 100644 --- a/internal/gitaly/service/wiki/write_page.go +++ b/internal/gitaly/service/wiki/write_page.go @@ -1,13 +1,12 @@ package wiki import ( - "fmt" + "errors" gitalyerrors "gitlab.com/gitlab-org/gitaly/v15/internal/errors" "gitlab.com/gitlab-org/gitaly/v15/internal/gitaly/rubyserver" + "gitlab.com/gitlab-org/gitaly/v15/internal/helper" "gitlab.com/gitlab-org/gitaly/v15/proto/go/gitalypb" - "google.golang.org/grpc/codes" - "google.golang.org/grpc/status" ) func (s *server) WikiWritePage(stream gitalypb.WikiService_WikiWritePageServer) error { @@ -17,7 +16,7 @@ func (s *server) WikiWritePage(stream gitalypb.WikiService_WikiWritePageServer) } if err := validateWikiWritePageRequest(firstRequest); err != nil { - return status.Errorf(codes.InvalidArgument, "WikiWritePage: %v", err) + return helper.ErrInvalidArgument(err) } ctx := stream.Context() @@ -66,11 +65,11 @@ func validateWikiWritePageRequest(request *gitalypb.WikiWritePageRequest) error return gitalyerrors.ErrEmptyRepository } if len(request.GetName()) == 0 { - return fmt.Errorf("empty Name") + return errors.New("empty Name") } if request.GetFormat() == "" { - return fmt.Errorf("empty Format") + return errors.New("empty Format") } return validateRequestCommitDetails(request) |