@@ -39,7 +39,7 @@ describe('issue prisma extension', () => {
3939 } ) ;
4040
4141 it ( 'enhance extended client' , async ( ) => {
42- const { enhanceRaw, prisma } = await loadSchema (
42+ const { enhanceRaw, prisma, prismaModule } = await loadSchema (
4343 `
4444 model Post {
4545 id Int @id
@@ -55,28 +55,31 @@ describe('issue prisma extension', () => {
5555 await prisma . post . create ( { data : { id : 1 , title : 'post1' , published : true } } ) ;
5656 await prisma . post . create ( { data : { id : 2 , title : 'post2' , published : false } } ) ;
5757
58- const extended = prisma . $extends ( {
59- model : {
60- post : {
61- findManyListView : async ( args : any ) => {
62- return { view : true , data : await prisma . post . findMany ( args ) } ;
58+ const ext = prismaModule . defineExtension ( ( _prisma : any ) => {
59+ return _prisma . $extends ( {
60+ model : {
61+ post : {
62+ findManyListView : async ( args : any ) => {
63+ return { view : true , data : await prisma . post . findMany ( args ) } ;
64+ } ,
6365 } ,
6466 } ,
65- } ,
67+ } ) ;
6668 } ) ;
6769
68- await expect ( extended . post . findMany ( ) ) . resolves . toHaveLength ( 2 ) ;
69- await expect ( extended . post . findManyListView ( ) ) . resolves . toMatchObject ( {
70+ await expect ( prisma . $extends ( ext ) . post . findMany ( ) ) . resolves . toHaveLength ( 2 ) ;
71+ await expect ( prisma . $extends ( ext ) . post . findManyListView ( ) ) . resolves . toMatchObject ( {
7072 view : true ,
7173 data : [
7274 { id : 1 , title : 'post1' , published : true } ,
7375 { id : 2 , title : 'post2' , published : false } ,
7476 ] ,
7577 } ) ;
7678
77- const db = enhanceRaw ( extended ) ;
78- await expect ( db . post . findMany ( ) ) . resolves . toHaveLength ( 1 ) ;
79- await expect ( db . post . findManyListView ( ) ) . resolves . toMatchObject ( {
79+ const enhanced = enhanceRaw ( prisma . $extends ( ext ) ) ;
80+ await expect ( enhanced . post . findMany ( ) ) . resolves . toHaveLength ( 1 ) ;
81+ // findManyListView internally uses the un-enhanced client
82+ await expect ( enhanced . post . findManyListView ( ) ) . resolves . toMatchObject ( {
8083 view : true ,
8184 data : [
8285 { id : 1 , title : 'post1' , published : true } ,
0 commit comments