diff --git a/core/errors/errors.go b/core/errors/errors.go index a5d0216d..b7b358ef 100644 --- a/core/errors/errors.go +++ b/core/errors/errors.go @@ -67,6 +67,11 @@ func NewInfraRetryable(err error) error { return newError(err, ErrorInfraRetryable) } +// NewCancelled wraps err as a TangoError classified ErrorCancelled. +func NewCancelled(err error) error { + return newError(err, ErrorCancelled) +} + func newError(err error, code ErrorCode) error { if err == nil { return nil diff --git a/core/errors/errors_test.go b/core/errors/errors_test.go index 5ceb0a43..47be5a22 100644 --- a/core/errors/errors_test.go +++ b/core/errors/errors_test.go @@ -34,6 +34,11 @@ func TestNewError_Constructors(t *testing.T) { newErr: NewInfraRetryable, wantCode: ErrorInfraRetryable, }, + { + name: "cancelled", + newErr: NewCancelled, + wantCode: ErrorCancelled, + }, } for _, tt := range tests {