Skip to content

Commit 2caabaf

Browse files
chore(auth): enhance password and email error handling with detailed messages
1 parent 76e8211 commit 2caabaf

File tree

1 file changed

+28
-17
lines changed

1 file changed

+28
-17
lines changed

pkg/auth/error.go

Lines changed: 28 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -46,23 +46,34 @@ var (
4646
StatusAccessDenied = api.NewGRPCStatus(
4747
pkgErr.NewErrorPermissionDenied(pkgErr.AuthPackageName, "access denied"))
4848

49-
// Password-related errors
50-
StatusPasswordTooWeak = gstatus.New(codes.InvalidArgument, "auth: password too weak")
51-
StatusPasswordMismatch = gstatus.New(codes.InvalidArgument, "auth: password mismatch")
52-
StatusPasswordAlreadyExists = gstatus.New(codes.AlreadyExists, "auth: password already exists")
53-
StatusPasswordNotFound = gstatus.New(codes.NotFound, "auth: password not found")
54-
StatusMissingCurrentPassword = gstatus.New(codes.InvalidArgument, "auth: current password must not be empty")
55-
StatusMissingNewPassword = gstatus.New(codes.InvalidArgument, "auth: new password must not be empty")
49+
StatusPasswordTooWeak = api.NewGRPCStatus(
50+
pkgErr.NewErrorInvalidArgNotMatchFormat(pkgErr.AuthPackageName, "password too weak", "password"))
51+
StatusPasswordMismatch = api.NewGRPCStatus(
52+
pkgErr.NewErrorInvalidArgNotMatchFormat(pkgErr.AuthPackageName, "password mismatch", "password"))
53+
StatusPasswordAlreadyExists = api.NewGRPCStatus(
54+
pkgErr.NewErrorAlreadyExists(pkgErr.AuthPackageName, "password already exists"))
55+
StatusPasswordNotFound = api.NewGRPCStatus(
56+
pkgErr.NewErrorNotFound(pkgErr.AuthPackageName, "password not found", "password"))
57+
StatusMissingCurrentPassword = api.NewGRPCStatus(
58+
pkgErr.NewErrorInvalidArgEmpty(pkgErr.AuthPackageName, "current password must not be empty", "currentPassword"))
59+
StatusMissingNewPassword = api.NewGRPCStatus(
60+
pkgErr.NewErrorInvalidArgEmpty(pkgErr.AuthPackageName, "new password must not be empty", "newPassword"))
5661

57-
// Password reset errors
58-
StatusInvalidResetToken = gstatus.New(codes.InvalidArgument, "auth: invalid reset token")
59-
StatusExpiredResetToken = gstatus.New(codes.InvalidArgument, "auth: reset token expired")
60-
StatusResetTokenNotFound = gstatus.New(codes.NotFound, "auth: reset token not found")
61-
StatusMissingResetToken = gstatus.New(codes.InvalidArgument, "auth: reset token must not be empty")
62+
StatusInvalidResetToken = api.NewGRPCStatus(
63+
pkgErr.NewErrorInvalidArgNotMatchFormat(pkgErr.AuthPackageName, "invalid reset token", "resetToken"))
64+
StatusExpiredResetToken = api.NewGRPCStatus(
65+
pkgErr.NewErrorFailedPrecondition(pkgErr.AuthPackageName, "reset token expired"))
66+
StatusResetTokenNotFound = api.NewGRPCStatus(
67+
pkgErr.NewErrorNotFound(pkgErr.AuthPackageName, "reset token not found", "resetToken"))
68+
StatusMissingResetToken = api.NewGRPCStatus(
69+
pkgErr.NewErrorInvalidArgEmpty(pkgErr.AuthPackageName, "reset token must not be empty", "resetToken"))
6270

63-
// Email service errors
64-
StatusEmailServiceUnavailable = gstatus.New(codes.Unavailable, "auth: email service unavailable")
65-
StatusTooManyEmailRequests = gstatus.New(codes.ResourceExhausted, "auth: too many email requests")
66-
StatusInvalidEmailConfig = gstatus.New(codes.InvalidArgument, "auth: invalid email configuration")
67-
StatusMissingEmail = gstatus.New(codes.InvalidArgument, "auth: email must not be empty")
71+
StatusEmailServiceUnavailable = api.NewGRPCStatus(
72+
pkgErr.NewErrorUnavailable(pkgErr.AuthPackageName, "email service unavailable"))
73+
StatusTooManyEmailRequests = api.NewGRPCStatus(
74+
pkgErr.NewErrorAborted(pkgErr.AuthPackageName, "too many email requests"))
75+
StatusInvalidEmailConfig = api.NewGRPCStatus(
76+
pkgErr.NewErrorInvalidArgNotMatchFormat(pkgErr.AuthPackageName, "invalid email configuration", "emailConfig"))
77+
StatusMissingEmail = api.NewGRPCStatus(
78+
pkgErr.NewErrorInvalidArgEmpty(pkgErr.AuthPackageName, "email must not be empty", "email"))
6879
)

0 commit comments

Comments
 (0)