Files
SnowLuma/.pnpm-store/v11/files/dd/c71df904e6d4a06acdfc60bcff89245196e9d16a45b92d92b6d363fdae001a954d3c5c2fe5b043130c999dd7bfa3fd6d18a9860b96a8b61471e3b5347f87a6
T
TanTan 2a69b23b47
Dev Build / cleanup (push) Waiting to run
Dev Build / typecheck (push) Waiting to run
docs: 仓库链接指向本镜像仓库
2026-11-13 09:27:07 +08:00

42 lines
1.0 KiB
Plaintext

import { expect, test } from "vitest";
import * as z from "zod/mini";
test("no locale by default", () => {
const result = z.safeParse(z.string(), 12);
expect(result.success).toEqual(false);
expect(result.error!.issues.length).toEqual(1);
expect(result.error!.issues[0].message).toEqual("Invalid input");
});
test("error inheritance", () => {
const e1 = z.string().safeParse(123).error!;
expect(e1).toBeInstanceOf(z.core.$ZodError);
expect(e1).toBeInstanceOf(Error);
let e2: unknown;
try {
z.string().parse(123);
} catch (err) {
e2 = err;
}
expect(e2).toBeInstanceOf(z.core.$ZodRealError);
expect(e2).toBeInstanceOf(Error);
});
test("a thrown error carries a stack rooted at the parse call site", () => {
function callSite() {
z.parse(z.string(), 123);
}
let thrown: unknown;
try {
callSite();
} catch (err) {
thrown = err;
}
expect(thrown).toBeInstanceOf(Error);
const stack = (thrown as Error).stack!;
expect(stack.startsWith("$ZodError: [")).toBe(true);
expect(stack).toContain("callSite");
});