Linux websever 5.15.0-153-generic #163-Ubuntu SMP Thu Aug 7 16:37:18 UTC 2025 x86_64
Apache/2.4.52 (Ubuntu)
: 192.168.3.70 | : 192.168.1.99
Cant Read [ /etc/named.conf ]
8.1.2-1ubuntu2.23
urlab
www.github.com/MadExploits
Terminal
AUTO ROOT
Adminer
Backdoor Destroyer
Linux Exploit
Lock Shell
Lock File
Create User
CREATE RDP
PHP Mailer
BACKCONNECT
UNLOCK SHELL
HASH IDENTIFIER
CPANEL RESET
CREATE WP USER
README
+ Create Folder
+ Create File
/
var /
www /
html /
cqt /
node_modules /
zod /
src /
v3 /
tests /
[ HOME SHELL ]
Name
Size
Permission
Action
Mocker.ts
1.31
KB
-rw-r--r--
all-errors.test.ts
4.64
KB
-rw-r--r--
anyunknown.test.ts
673
B
-rw-r--r--
array.test.ts
1.89
KB
-rw-r--r--
async-parsing.test.ts
12.34
KB
-rw-r--r--
async-refinements.test.ts
1.57
KB
-rw-r--r--
base.test.ts
782
B
-rw-r--r--
bigint.test.ts
1.93
KB
-rw-r--r--
branded.test.ts
1.69
KB
-rw-r--r--
catch.test.ts
6.4
KB
-rw-r--r--
coerce.test.ts
6.49
KB
-rw-r--r--
complex.test.ts
1.87
KB
-rw-r--r--
custom.test.ts
950
B
-rw-r--r--
date.test.ts
983
B
-rw-r--r--
deepmasking.test.ts
5.09
KB
-rw-r--r--
default.test.ts
3.44
KB
-rw-r--r--
description.test.ts
1.29
KB
-rw-r--r--
discriminated-unions.test.ts
8.34
KB
-rw-r--r--
enum.test.ts
2.67
KB
-rw-r--r--
error.test.ts
16.42
KB
-rw-r--r--
firstparty.test.ts
2.33
KB
-rw-r--r--
firstpartyschematypes.test.ts
788
B
-rw-r--r--
function.test.ts
6.42
KB
-rw-r--r--
generics.test.ts
1.49
KB
-rw-r--r--
instanceof.test.ts
1.13
KB
-rw-r--r--
intersection.test.ts
3.02
KB
-rw-r--r--
language-server.source.ts
1.25
KB
-rw-r--r--
language-server.test.ts
8.12
KB
-rw-r--r--
literal.test.ts
1.04
KB
-rw-r--r--
map.test.ts
3.46
KB
-rw-r--r--
masking.test.ts
85
B
-rw-r--r--
mocker.test.ts
389
B
-rw-r--r--
nan.test.ts
587
B
-rw-r--r--
nativeEnum.test.ts
2.29
KB
-rw-r--r--
nullable.test.ts
1.14
KB
-rw-r--r--
number.test.ts
6.22
KB
-rw-r--r--
object-augmentation.test.ts
569
B
-rw-r--r--
object-in-es5-env.test.ts
778
B
-rw-r--r--
object.test.ts
11.5
KB
-rw-r--r--
optional.test.ts
1.19
KB
-rw-r--r--
parseUtil.test.ts
869
B
-rw-r--r--
parser.test.ts
1.1
KB
-rw-r--r--
partials.test.ts
6.83
KB
-rw-r--r--
pickomit.test.ts
3.54
KB
-rw-r--r--
pipeline.test.ts
823
B
-rw-r--r--
preprocess.test.ts
4.42
KB
-rw-r--r--
primitive.test.ts
11.93
KB
-rw-r--r--
promise.test.ts
2.43
KB
-rw-r--r--
readonly.test.ts
7.17
KB
-rw-r--r--
record.test.ts
3.65
KB
-rw-r--r--
recursive.test.ts
3.85
KB
-rw-r--r--
refine.test.ts
7.98
KB
-rw-r--r--
safeparse.test.ts
628
B
-rw-r--r--
set.test.ts
4.68
KB
-rw-r--r--
standard-schema.test.ts
2.53
KB
-rw-r--r--
string.test.ts
64.08
KB
-rw-r--r--
transformer.test.ts
5.55
KB
-rw-r--r--
tuple.test.ts
2.63
KB
-rw-r--r--
unions.test.ts
1.5
KB
-rw-r--r--
validations.test.ts
3.74
KB
-rw-r--r--
void.test.ts
349
B
-rw-r--r--
Delete
Unzip
Zip
${this.title}
Close
Code Editor : async-parsing.test.ts
// @ts-ignore TS6133 import { expect, test } from "vitest"; import * as z from "zod/v3"; /// string const stringSchema = z.string(); test("string async parse", async () => { const goodData = "XXX"; const badData = 12; const goodResult = await stringSchema.safeParseAsync(goodData); expect(goodResult.success).toBe(true); if (goodResult.success) expect(goodResult.data).toEqual(goodData); const badResult = await stringSchema.safeParseAsync(badData); expect(badResult.success).toBe(false); if (!badResult.success) expect(badResult.error).toBeInstanceOf(z.ZodError); }); /// number const numberSchema = z.number(); test("number async parse", async () => { const goodData = 1234.2353; const badData = "1234"; const goodResult = await numberSchema.safeParseAsync(goodData); expect(goodResult.success).toBe(true); if (goodResult.success) expect(goodResult.data).toEqual(goodData); const badResult = await numberSchema.safeParseAsync(badData); expect(badResult.success).toBe(false); if (!badResult.success) expect(badResult.error).toBeInstanceOf(z.ZodError); }); /// bigInt const bigIntSchema = z.bigint(); test("bigInt async parse", async () => { const goodData = BigInt(145); const badData = 134; const goodResult = await bigIntSchema.safeParseAsync(goodData); expect(goodResult.success).toBe(true); if (goodResult.success) expect(goodResult.data).toEqual(goodData); const badResult = await bigIntSchema.safeParseAsync(badData); expect(badResult.success).toBe(false); if (!badResult.success) expect(badResult.error).toBeInstanceOf(z.ZodError); }); /// boolean const booleanSchema = z.boolean(); test("boolean async parse", async () => { const goodData = true; const badData = 1; const goodResult = await booleanSchema.safeParseAsync(goodData); expect(goodResult.success).toBe(true); if (goodResult.success) expect(goodResult.data).toEqual(goodData); const badResult = await booleanSchema.safeParseAsync(badData); expect(badResult.success).toBe(false); if (!badResult.success) expect(badResult.error).toBeInstanceOf(z.ZodError); }); /// date const dateSchema = z.date(); test("date async parse", async () => { const goodData = new Date(); const badData = new Date().toISOString(); const goodResult = await dateSchema.safeParseAsync(goodData); expect(goodResult.success).toBe(true); if (goodResult.success) expect(goodResult.data).toEqual(goodData); const badResult = await dateSchema.safeParseAsync(badData); expect(badResult.success).toBe(false); if (!badResult.success) expect(badResult.error).toBeInstanceOf(z.ZodError); }); /// undefined const undefinedSchema = z.undefined(); test("undefined async parse", async () => { const goodData = undefined; const badData = "XXX"; const goodResult = await undefinedSchema.safeParseAsync(goodData); expect(goodResult.success).toBe(true); if (goodResult.success) expect(goodResult.data).toEqual(undefined); const badResult = await undefinedSchema.safeParseAsync(badData); expect(badResult.success).toBe(false); if (!badResult.success) expect(badResult.error).toBeInstanceOf(z.ZodError); }); /// null const nullSchema = z.null(); test("null async parse", async () => { const goodData = null; const badData = undefined; const goodResult = await nullSchema.safeParseAsync(goodData); expect(goodResult.success).toBe(true); if (goodResult.success) expect(goodResult.data).toEqual(goodData); const badResult = await nullSchema.safeParseAsync(badData); expect(badResult.success).toBe(false); if (!badResult.success) expect(badResult.error).toBeInstanceOf(z.ZodError); }); /// any const anySchema = z.any(); test("any async parse", async () => { const goodData = [{}]; // const badData = 'XXX'; const goodResult = await anySchema.safeParseAsync(goodData); expect(goodResult.success).toBe(true); if (goodResult.success) expect(goodResult.data).toEqual(goodData); // const badResult = await anySchema.safeParseAsync(badData); // expect(badResult.success).toBe(false); // if (!badResult.success) expect(badResult.error).toBeInstanceOf(z.ZodError); }); /// unknown const unknownSchema = z.unknown(); test("unknown async parse", async () => { const goodData = ["asdf", 124, () => {}]; // const badData = 'XXX'; const goodResult = await unknownSchema.safeParseAsync(goodData); expect(goodResult.success).toBe(true); if (goodResult.success) expect(goodResult.data).toEqual(goodData); // const badResult = await unknownSchema.safeParseAsync(badData); // expect(badResult.success).toBe(false); // if (!badResult.success) expect(badResult.error).toBeInstanceOf(z.ZodError); }); /// void const voidSchema = z.void(); test("void async parse", async () => { const goodData = undefined; const badData = 0; const goodResult = await voidSchema.safeParseAsync(goodData); expect(goodResult.success).toBe(true); if (goodResult.success) expect(goodResult.data).toEqual(goodData); const badResult = await voidSchema.safeParseAsync(badData); expect(badResult.success).toBe(false); if (!badResult.success) expect(badResult.error).toBeInstanceOf(z.ZodError); }); /// array const arraySchema = z.array(z.string()); test("array async parse", async () => { const goodData = ["XXX"]; const badData = "XXX"; const goodResult = await arraySchema.safeParseAsync(goodData); expect(goodResult.success).toBe(true); if (goodResult.success) expect(goodResult.data).toEqual(goodData); const badResult = await arraySchema.safeParseAsync(badData); expect(badResult.success).toBe(false); if (!badResult.success) expect(badResult.error).toBeInstanceOf(z.ZodError); }); /// object const objectSchema = z.object({ string: z.string() }); test("object async parse", async () => { const goodData = { string: "XXX" }; const badData = { string: 12 }; const goodResult = await objectSchema.safeParseAsync(goodData); expect(goodResult.success).toBe(true); if (goodResult.success) expect(goodResult.data).toEqual(goodData); const badResult = await objectSchema.safeParseAsync(badData); expect(badResult.success).toBe(false); if (!badResult.success) expect(badResult.error).toBeInstanceOf(z.ZodError); }); /// union const unionSchema = z.union([z.string(), z.undefined()]); test("union async parse", async () => { const goodData = undefined; const badData = null; const goodResult = await unionSchema.safeParseAsync(goodData); expect(goodResult.success).toBe(true); if (goodResult.success) expect(goodResult.data).toEqual(goodData); const badResult = await unionSchema.safeParseAsync(badData); expect(badResult.success).toBe(false); if (!badResult.success) expect(badResult.error).toBeInstanceOf(z.ZodError); }); /// record const recordSchema = z.record(z.object({})); test("record async parse", async () => { const goodData = { adsf: {}, asdf: {} }; const badData = [{}]; const goodResult = await recordSchema.safeParseAsync(goodData); expect(goodResult.success).toBe(true); if (goodResult.success) expect(goodResult.data).toEqual(goodData); const badResult = await recordSchema.safeParseAsync(badData); expect(badResult.success).toBe(false); if (!badResult.success) expect(badResult.error).toBeInstanceOf(z.ZodError); }); /// function const functionSchema = z.function(); test("function async parse", async () => { const goodData = () => {}; const badData = "XXX"; const goodResult = await functionSchema.safeParseAsync(goodData); expect(goodResult.success).toBe(true); if (goodResult.success) expect(typeof goodResult.data).toEqual("function"); const badResult = await functionSchema.safeParseAsync(badData); expect(badResult.success).toBe(false); if (!badResult.success) expect(badResult.error).toBeInstanceOf(z.ZodError); }); /// literal const literalSchema = z.literal("asdf"); test("literal async parse", async () => { const goodData = "asdf"; const badData = "asdff"; const goodResult = await literalSchema.safeParseAsync(goodData); expect(goodResult.success).toBe(true); if (goodResult.success) expect(goodResult.data).toEqual(goodData); const badResult = await literalSchema.safeParseAsync(badData); expect(badResult.success).toBe(false); if (!badResult.success) expect(badResult.error).toBeInstanceOf(z.ZodError); }); /// enum const enumSchema = z.enum(["fish", "whale"]); test("enum async parse", async () => { const goodData = "whale"; const badData = "leopard"; const goodResult = await enumSchema.safeParseAsync(goodData); expect(goodResult.success).toBe(true); if (goodResult.success) expect(goodResult.data).toEqual(goodData); const badResult = await enumSchema.safeParseAsync(badData); expect(badResult.success).toBe(false); if (!badResult.success) expect(badResult.error).toBeInstanceOf(z.ZodError); }); /// nativeEnum enum nativeEnumTest { asdf = "qwer", } // @ts-ignore const nativeEnumSchema = z.nativeEnum(nativeEnumTest); test("nativeEnum async parse", async () => { const goodData = nativeEnumTest.asdf; const badData = "asdf"; const goodResult = await nativeEnumSchema.safeParseAsync(goodData); expect(goodResult.success).toBe(true); if (goodResult.success) expect(goodResult.data).toEqual(goodData); const badResult = await nativeEnumSchema.safeParseAsync(badData); expect(badResult.success).toBe(false); if (!badResult.success) expect(badResult.error).toBeInstanceOf(z.ZodError); }); /// promise const promiseSchema = z.promise(z.number()); test("promise async parse good", async () => { const goodData = Promise.resolve(123); const goodResult = await promiseSchema.safeParseAsync(goodData); expect(goodResult.success).toBe(true); if (goodResult.success) { expect(goodResult.data).toBeInstanceOf(Promise); const data = await goodResult.data; expect(data).toEqual(123); // expect(goodResult.data).resolves.toEqual(124); // return goodResult.data; } else { throw new Error("success should be true"); } }); test("promise async parse bad", async () => { const badData = Promise.resolve("XXX"); const badResult = await promiseSchema.safeParseAsync(badData); expect(badResult.success).toBe(true); if (badResult.success) { await expect(badResult.data).rejects.toBeInstanceOf(z.ZodError); } else { throw new Error("success should be true"); } }); test("async validation non-empty strings", async () => { const base = z.object({ hello: z.string().refine((x) => x && x.length > 0), foo: z.string().refine((x) => x && x.length > 0), }); const testval = { hello: "", foo: "" }; const result1 = base.safeParse(testval); const result2 = base.safeParseAsync(testval); const r1 = result1; await result2.then((r2) => { if (r1.success === false && r2.success === false) expect(r1.error.issues.length).toBe(r2.error.issues.length); // <--- r1 has length 2, r2 has length 1 }); }); test("async validation multiple errors 1", async () => { const base = z.object({ hello: z.string(), foo: z.number(), }); const testval = { hello: 3, foo: "hello" }; const result1 = base.safeParse(testval); const result2 = base.safeParseAsync(testval); const r1 = result1; await result2.then((r2) => { if (r1.success === false && r2.success === false) expect(r2.error.issues.length).toBe(r1.error.issues.length); }); }); test("async validation multiple errors 2", async () => { const base = (is_async?: boolean) => z.object({ hello: z.string(), foo: z.object({ bar: z.number().refine(is_async ? async () => false : () => false), }), }); const testval = { hello: 3, foo: { bar: 4 } }; const result1 = base().safeParse(testval); const result2 = base(true).safeParseAsync(testval); const r1 = result1; await result2.then((r2) => { if (r1.success === false && r2.success === false) expect(r2.error.issues.length).toBe(r1.error.issues.length); }); }); test("ensure early async failure prevents follow-up refinement checks", async () => { let count = 0; const base = z.object({ hello: z.string(), foo: z .number() .refine(async () => { count++; return true; }) .refine(async () => { count++; return true; }, "Good"), }); const testval = { hello: "bye", foo: 3 }; const result = await base.safeParseAsync(testval); if (result.success === false) { expect(result.error.issues.length).toBe(1); expect(count).toBe(1); } // await result.then((r) => { // if (r.success === false) expect(r.error.issues.length).toBe(1); // expect(count).toBe(2); // }); });
Close