0.1.1 #2
36
src/tests.ts
36
src/tests.ts
@@ -1,17 +1,27 @@
|
|||||||
import { z } from "zod"
|
import { z } from "zod"
|
||||||
import { extendSchemableClass } from "."
|
import { extendSchemableClass, makeSchemableClassFrom } from "."
|
||||||
|
|
||||||
|
|
||||||
const Test1Schema = z.object({ prout: z.string() })
|
// class Test1 {
|
||||||
class Test1 {
|
// static readonly schema = Test1Schema
|
||||||
static readonly schema = Test1Schema
|
// readonly schema = Test1Schema
|
||||||
readonly schema = Test1Schema
|
|
||||||
|
|
||||||
static readonly defaultValues = { prout: "heugneu" }
|
// static readonly defaultValues = { prout: "heugneu" }
|
||||||
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(
|
const Test2 = extendSchemableClass(
|
||||||
Test1,
|
Test1,
|
||||||
@@ -20,4 +30,10 @@ const Test2 = extendSchemableClass(
|
|||||||
)
|
)
|
||||||
|
|
||||||
Test2.defaultValues
|
Test2.defaultValues
|
||||||
new Test2().prout
|
new Test2({ prout: "ruquier", ruquier: 69 }).randomProperty
|
||||||
|
|
||||||
|
|
||||||
|
class Test3 extends Test2 {
|
||||||
|
}
|
||||||
|
|
||||||
|
console.log(new Test3({ prout: "ruquier", ruquier: 69 }))
|
||||||
|
|||||||
Reference in New Issue
Block a user