/opt/canhelp/node_modules/zod/src/v4/classic/tests
Edit: /opt/canhelp/node_modules/zod/src/v4/classic/tests/prefault.test.ts (1007B)
import { expect, expectTypeOf, test } from "vitest";
import { z } from "zod/v4";
test("basic prefault", () => {
const a = z.prefault(z.string().trim(), " default ");
expect(a).toBeInstanceOf(z.ZodPrefault);
expect(a.parse(" asdf ")).toEqual("asdf");
expect(a.parse(undefined)).toEqual("default");
type inp = z.input
;
expectTypeOf().toEqualTypeOf();
type out = z.output;
expectTypeOf().toEqualTypeOf();
});
test("prefault inside object", () => {
// test optinality
const a = z.object({
name: z.string().optional(),
age: z.number().default(1234),
email: z.string().prefault("1234"),
});
type inp = z.input;
expectTypeOf().toEqualTypeOf<{
name?: string | undefined;
age?: number | undefined;
email?: string | undefined;
}>();
type out = z.output;
expectTypeOf().toEqualTypeOf<{
name?: string | undefined;
age: number;
email: string;
}>();
});