Skip to content

Commit

Permalink
feature: allow falsy error message
Browse files Browse the repository at this point in the history
  • Loading branch information
fernandollisboa committed Jan 24, 2024
1 parent dd84925 commit 5407660
Show file tree
Hide file tree
Showing 4 changed files with 20 additions and 2 deletions.
9 changes: 9 additions & 0 deletions deno/lib/__tests__/error.test.ts
Original file line number Diff line number Diff line change
Expand Up @@ -516,6 +516,15 @@ test("literal bigint default error message", () => {
}
});

test.only("when the message is falsy, it is used as is provided", () => {
const schema = z.string().max(1, { message: "" });
const result = schema.safeParse("asdf");
expect(result.success).toEqual(false);
if (!result.success) {
expect(result.error.issues[0].message).toEqual("");
}
});

// test("dont short circuit on continuable errors", () => {
// const user = z
// .object({
Expand Down
2 changes: 1 addition & 1 deletion deno/lib/helpers/parseUtil.ts
Original file line number Diff line number Diff line change
Expand Up @@ -28,7 +28,7 @@ export const makeIssue = (params: {
return {
...issueData,
path: fullPath,
message: issueData.message || errorMessage,
message: issueData.message ?? errorMessage,
};
};

Expand Down
9 changes: 9 additions & 0 deletions src/__tests__/error.test.ts
Original file line number Diff line number Diff line change
Expand Up @@ -515,6 +515,15 @@ test("literal bigint default error message", () => {
}
});

test.only("when the message is falsy, it is used as is provided", () => {
const schema = z.string().max(1, { message: "" });
const result = schema.safeParse("asdf");
expect(result.success).toEqual(false);
if (!result.success) {
expect(result.error.issues[0].message).toEqual("");
}
});

// test("dont short circuit on continuable errors", () => {
// const user = z
// .object({
Expand Down
2 changes: 1 addition & 1 deletion src/helpers/parseUtil.ts
Original file line number Diff line number Diff line change
Expand Up @@ -28,7 +28,7 @@ export const makeIssue = (params: {
return {
...issueData,
path: fullPath,
message: issueData.message || errorMessage,
message: issueData.message ?? errorMessage,
};
};

Expand Down

0 comments on commit 5407660

Please sign in to comment.