mirror of
https://github.com/coder/coder.git
synced 2025-07-15 22:20:27 +00:00
fix(site): ensure empty string error shows default message (#10196)
* fix(site): ensure empty string error shows default message * added test * added logging * asserting axios message * cleanup and add test
This commit is contained in:
@ -3,6 +3,7 @@ import {
|
||||
getValidationErrorMessage,
|
||||
isApiError,
|
||||
mapApiErrorToFieldErrors,
|
||||
getErrorMessage,
|
||||
} from "./errors";
|
||||
|
||||
describe("isApiError", () => {
|
||||
@ -82,4 +83,21 @@ describe("getValidationErrorMessage", () => {
|
||||
),
|
||||
).toEqual("");
|
||||
});
|
||||
|
||||
it("returns default message for error that is empty string", () => {
|
||||
expect(getErrorMessage("", "Something went wrong.")).toBe(
|
||||
"Something went wrong.",
|
||||
);
|
||||
});
|
||||
|
||||
it("returns default message for 404 API response", () => {
|
||||
expect(
|
||||
getErrorMessage(
|
||||
mockApiError({
|
||||
message: "",
|
||||
}),
|
||||
"Something went wrong.",
|
||||
),
|
||||
).toBe("Something went wrong.");
|
||||
});
|
||||
});
|
||||
|
@ -62,10 +62,13 @@ export const getErrorMessage = (
|
||||
error: unknown,
|
||||
defaultMessage: string,
|
||||
): string => {
|
||||
if (isApiError(error)) {
|
||||
// if error is API error
|
||||
// 404s result in the default message being returned
|
||||
if (isApiError(error) && error.response.data.message) {
|
||||
return error.response.data.message;
|
||||
}
|
||||
if (typeof error === "string") {
|
||||
// if error is a non-empty string
|
||||
if (error && typeof error === "string") {
|
||||
return error;
|
||||
}
|
||||
return defaultMessage;
|
||||
|
Reference in New Issue
Block a user