generated from VLADIMIR/template
add local
This commit is contained in:
@@ -0,0 +1,22 @@
|
||||
package app
|
||||
|
||||
import (
|
||||
"fmt"
|
||||
"testing"
|
||||
|
||||
"evening_detective_server/internal/services/users_service"
|
||||
|
||||
"google.golang.org/grpc/codes"
|
||||
"google.golang.org/grpc/status"
|
||||
)
|
||||
|
||||
func TestLocalAccountErrorStatus(t *testing.T) {
|
||||
for _, test := range []struct{ name string }{{"email unavailable"}} {
|
||||
t.Run(test.name, func(t *testing.T) {
|
||||
err := userErrorStatus(fmt.Errorf("private detail: %w", users_service.ErrEmailUnavailable), "account failed")
|
||||
if status.Code(err) != codes.FailedPrecondition || status.Convert(err).Message() != users_service.ErrEmailUnavailable.Error() {
|
||||
t.Fatalf("status = %v", err)
|
||||
}
|
||||
})
|
||||
}
|
||||
}
|
||||
@@ -11,6 +11,8 @@ import (
|
||||
|
||||
func userErrorStatus(err error, internalMessage string) error {
|
||||
switch {
|
||||
case errors.Is(err, users_service.ErrEmailUnavailable):
|
||||
return status.Error(codes.FailedPrecondition, users_service.ErrEmailUnavailable.Error())
|
||||
case errors.Is(err, users_service.ErrUserNotFound):
|
||||
return status.Error(codes.NotFound, err.Error())
|
||||
case errors.Is(err, users_service.ErrTermsNotAccepted), errors.Is(err, users_service.ErrInvalidEmail), errors.Is(err, users_service.ErrInvalidRole), errors.Is(err, users_service.ErrInvalidPasswordChange):
|
||||
|
||||
Reference in New Issue
Block a user