(ctx context.Context, err error)
| 1274 | } |
| 1275 | |
| 1276 | func normalizeError(ctx context.Context, err error) normalizedErrorPayload { |
| 1277 | payload := normalizedErrorPayload{} |
| 1278 | if err == nil { |
| 1279 | return payload |
| 1280 | } |
| 1281 | |
| 1282 | payload.Message = err.Error() |
| 1283 | payload.Type = fmt.Sprintf("%T", err) |
| 1284 | if ctxErr := ctx.Err(); ctxErr != nil { |
| 1285 | payload.ContextError = ctxErr.Error() |
| 1286 | } |
| 1287 | |
| 1288 | var providerErr *fantasy.ProviderError |
| 1289 | if errors.As(err, &providerErr) { |
| 1290 | payload.ProviderTitle = providerErr.Title |
| 1291 | payload.ProviderStatus = providerErr.StatusCode |
| 1292 | payload.IsRetryable = providerErr.IsRetryable() |
| 1293 | } |
| 1294 | |
| 1295 | return payload |
| 1296 | } |
no test coverage detected