Buckets:
| // @ts-ignore TS6133 | |
| import { test } from "vitest"; | |
| import * as z from "zod/v3"; | |
| test("test", () => { | |
| z; | |
| }); | |
| // const fish = z.object({ | |
| // name: z.string(), | |
| // props: z.object({ | |
| // color: z.string(), | |
| // numScales: z.number(), | |
| // }), | |
| // }); | |
| // const nonStrict = z | |
| // .object({ | |
| // name: z.string(), | |
| // color: z.string(), | |
| // }) | |
| // .nonstrict(); | |
| // test('object pick type', () => { | |
| // const modNonStrictFish = nonStrict.omit({ name: true }); | |
| // modNonStrictFish.parse({ color: 'asdf' }); | |
| // const bad1 = () => fish.pick({ props: { unknown: true } } as any); | |
| // const bad2 = () => fish.omit({ name: true, props: { unknown: true } } as any); | |
| // expect(bad1).toThrow(); | |
| // expect(bad2).toThrow(); | |
| // }); | |
| // test('f1', () => { | |
| // const f1 = fish.pick(true); | |
| // f1.parse({ name: 'a', props: { color: 'b', numScales: 3 } }); | |
| // }); | |
| // test('f2', () => { | |
| // const f2 = fish.pick({ props: true }); | |
| // f2.parse({ props: { color: 'asdf', numScales: 1 } }); | |
| // const badcheck2 = () => f2.parse({ name: 'a', props: { color: 'b', numScales: 3 } } as any); | |
| // expect(badcheck2).toThrow(); | |
| // }); | |
| // test('f3', () => { | |
| // const f3 = fish.pick({ props: { color: true } }); | |
| // f3.parse({ props: { color: 'b' } }); | |
| // const badcheck3 = () => f3.parse({ name: 'a', props: { color: 'b', numScales: 3 } } as any); | |
| // expect(badcheck3).toThrow(); | |
| // }); | |
| // test('f4', () => { | |
| // const badcheck4 = () => fish.pick({ props: { color: true, unknown: true } }); | |
| // expect(badcheck4).toThrow(); | |
| // }); | |
| // test('f6', () => { | |
| // const f6 = fish.omit({ props: true }); | |
| // const badcheck6 = () => f6.parse({ name: 'a', props: { color: 'b', numScales: 3 } } as any); | |
| // f6.parse({ name: 'adsf' }); | |
| // expect(badcheck6).toThrow(); | |
| // }); | |
| // test('f7', () => { | |
| // const f7 = fish.omit({ props: { color: true } }); | |
| // f7.parse({ name: 'a', props: { numScales: 3 } }); | |
| // const badcheck7 = () => f7.parse({ name: 'a', props: { color: 'b', numScales: 3 } } as any); | |
| // expect(badcheck7).toThrow(); | |
| // }); | |
| // test('f8', () => { | |
| // const badcheck8 = () => fish.omit({ props: { color: true, unknown: true } }); | |
| // expect(badcheck8).toThrow(); | |
| // }); | |
| // test('f9', () => { | |
| // const f9 = nonStrict.pick(true); | |
| // f9.parse({ name: 'a', color: 'asdf' }); | |
| // }); | |
| // test('f10', () => { | |
| // const f10 = nonStrict.pick({ name: true }); | |
| // f10.parse({ name: 'a' }); | |
| // const val = f10.parse({ name: 'a', color: 'b' }); | |
| // expect(val).toEqual({ name: 'a' }); | |
| // }); | |
| // test('f12', () => { | |
| // const badfcheck12 = () => nonStrict.omit({ color: true, asdf: true }); | |
| // expect(badfcheck12).toThrow(); | |
| // }); | |
| // test('array masking', () => { | |
| // const fishArray = z.array(fish); | |
| // const modFishArray = fishArray.pick({ | |
| // name: true, | |
| // props: { | |
| // numScales: true, | |
| // }, | |
| // }); | |
| // modFishArray.parse([{ name: 'fish', props: { numScales: 12 } }]); | |
| // const bad1 = () => modFishArray.parse([{ name: 'fish', props: { numScales: 12, color: 'asdf' } }] as any); | |
| // expect(bad1).toThrow(); | |
| // }); | |
| // test('array masking', () => { | |
| // const fishArray = z.array(fish); | |
| // const fail = () => | |
| // fishArray.pick({ | |
| // name: true, | |
| // props: { | |
| // whatever: true, | |
| // }, | |
| // } as any); | |
| // expect(fail).toThrow(); | |
| // }); | |
| // test('array masking', () => { | |
| // const fishArray = z.array(fish); | |
| // const fail = () => | |
| // fishArray.omit({ | |
| // whateve: true, | |
| // } as any); | |
| // expect(fail).toThrow(); | |
| // }); | |
| // test('array masking', () => { | |
| // const fishArray = z.array(fish); | |
| // const modFishList = fishArray.omit({ | |
| // name: true, | |
| // props: { | |
| // color: true, | |
| // }, | |
| // }); | |
| // modFishList.parse([{ props: { numScales: 12 } }]); | |
| // const fail = () => modFishList.parse([{ name: 'hello', props: { numScales: 12 } }] as any); | |
| // expect(fail).toThrow(); | |
| // }); | |
| // test('primitive array masking', () => { | |
| // const fishArray = z.array(z.number()); | |
| // const fail = () => fishArray.pick({} as any); | |
| // expect(fail).toThrow(); | |
| // }); | |
| // test('other array masking', () => { | |
| // const fishArray = z.array(z.array(z.number())); | |
| // const fail = () => fishArray.pick({} as any); | |
| // expect(fail).toThrow(); | |
| // }); | |
| // test('invalid mask #1', () => { | |
| // const fail = () => fish.pick(1 as any); | |
| // expect(fail).toThrow(); | |
| // }); | |
| // test('invalid mask #2', () => { | |
| // const fail = () => fish.pick([] as any); | |
| // expect(fail).toThrow(); | |
| // }); | |
| // test('invalid mask #3', () => { | |
| // const fail = () => fish.pick(false as any); | |
| // expect(fail).toThrow(); | |
| // }); | |
| // test('invalid mask #4', () => { | |
| // const fail = () => fish.pick('asdf' as any); | |
| // expect(fail).toThrow(); | |
| // }); | |
| // test('invalid mask #5', () => { | |
| // const fail = () => fish.omit(1 as any); | |
| // expect(fail).toThrow(); | |
| // }); | |
| // test('invalid mask #6', () => { | |
| // const fail = () => fish.omit([] as any); | |
| // expect(fail).toThrow(); | |
| // }); | |
| // test('invalid mask #7', () => { | |
| // const fail = () => fish.omit(false as any); | |
| // expect(fail).toThrow(); | |
| // }); | |
| // test('invalid mask #8', () => { | |
| // const fail = () => fish.omit('asdf' as any); | |
| // expect(fail).toThrow(); | |
| // }); | |
Xet Storage Details
- Size:
- 5.22 kB
- Xet hash:
- 32a4a64a30f4eebad815be13aa8318c1a762e3d7651d1e87922c20aa02bd272d
·
Xet efficiently stores files, intelligently splitting them into unique chunks and accelerating uploads and downloads. More info.