Skip to content

Commit f90e149

Browse files
authored
Merge pull request #3 from thefrontside/bugfix
🐛 Fix empty error message for missing required fields
2 parents e5c3948 + fe66ac5 commit f90e149

2 files changed

Lines changed: 8 additions & 1 deletion

File tree

‎lib/field.ts‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -89,9 +89,9 @@ export function field<T>(
8989
value: undefined as T,
9090
issues,
9191
};
92+
sources.push(source);
9293

9394
if (!issues) {
94-
sources.push(source);
9595
return {
9696
ok: true as const,
9797
value: source.value,

‎test/field.test.ts‎

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -97,4 +97,11 @@ describe("field", () => {
9797

9898
it.skip("supports custom parsers", () => {});
9999
});
100+
101+
it("includes validation issues in the error when no input is provided", () => {
102+
let result = parseSync(field(type("number")), {});
103+
assert(!result.ok);
104+
assert(result.error instanceof ValidationError);
105+
expect(result.error.message).toMatch(/must be a number/);
106+
});
100107
});

0 commit comments

Comments
 (0)