diff --git a/src/tests.ts b/src/tests.ts index f1763fa..b2c37a9 100644 --- a/src/tests.ts +++ b/src/tests.ts @@ -1,17 +1,27 @@ import { z } from "zod" -import { extendSchemableClass } from "." +import { extendSchemableClass, makeSchemableClassFrom } from "." -const Test1Schema = z.object({ prout: z.string() }) -class Test1 { - static readonly schema = Test1Schema - readonly schema = Test1Schema +// class Test1 { +// static readonly schema = Test1Schema +// readonly schema = Test1Schema - static readonly defaultValues = { prout: "heugneu" } - readonly defaultValues = { prout: "heugneu" } +// static readonly defaultValues = { prout: "heugneu" } +// readonly defaultValues = { prout: "heugneu" } + +// prout: string = "heugneu" +// } + +const Test1 = makeSchemableClassFrom( + class { + randomProperty: string = "" + }, + z.object({ prout: z.string() }), + {}, +) + +new Test1({ prout: "adfd" }).prout - prout: string = "heugneu" -} const Test2 = extendSchemableClass( Test1, @@ -20,4 +30,10 @@ const Test2 = extendSchemableClass( ) Test2.defaultValues -new Test2().prout +new Test2({ prout: "ruquier", ruquier: 69 }).randomProperty + + +class Test3 extends Test2 { +} + +console.log(new Test3({ prout: "ruquier", ruquier: 69 }))