@@ -44,13 +44,9 @@ describe('With Policy: client extensions', () => {
4444 } ) ;
4545 } ) ;
4646
47- const xprisma = prisma . $extends ( ext ) ;
48- const db = enhanceRaw ( xprisma ) ;
49- await expect ( db . model . getAll ( ) ) . resolves . toHaveLength ( 2 ) ;
50-
51- // FIXME: extending an enhanced client doesn't work for this case
52- // const db1 = enhance(prisma).$extends(ext);
53- // await expect(db1.model.getAll()).resolves.toHaveLength(2);
47+ await expect ( prisma . $extends ( ext ) . model . getAll ( ) ) . resolves . toHaveLength ( 3 ) ;
48+ await expect ( enhanceRaw ( prisma . $extends ( ext ) ) . model . getAll ( ) ) . resolves . toHaveLength ( 2 ) ;
49+ await expect ( enhanceRaw ( prisma ) . $extends ( ext ) . model . getAll ( ) ) . resolves . toHaveLength ( 2 ) ;
5450 } ) ;
5551
5652 it ( 'one model new method' , async ( ) => {
@@ -84,9 +80,9 @@ describe('With Policy: client extensions', () => {
8480 } ) ;
8581 } ) ;
8682
87- const xprisma = prisma . $extends ( ext ) ;
88- const db = enhanceRaw ( xprisma ) ;
89- await expect ( db . model . getAll ( ) ) . resolves . toHaveLength ( 2 ) ;
83+ await expect ( prisma . $extends ( ext ) . model . getAll ( ) ) . resolves . toHaveLength ( 3 ) ;
84+ await expect ( enhanceRaw ( prisma . $extends ( ext ) ) . model . getAll ( ) ) . resolves . toHaveLength ( 2 ) ;
85+ await expect ( enhanceRaw ( prisma ) . $extends ( ext ) . model . getAll ( ) ) . resolves . toHaveLength ( 2 ) ;
9086 } ) ;
9187
9288 it ( 'add client method' , async ( ) => {
@@ -115,8 +111,11 @@ describe('With Policy: client extensions', () => {
115111 } ) ;
116112 } ) ;
117113
118- const xprisma = prisma . $extends ( ext ) ;
119- xprisma . $log ( 'abc' ) ;
114+ enhanceRaw ( prisma ) . $extends ( ext ) . $log ( 'abc' ) ;
115+ expect ( logged ) . toBeTruthy ( ) ;
116+
117+ logged = false ;
118+ enhanceRaw ( prisma . $extends ( ext ) ) . $log ( 'abc' ) ;
120119 expect ( logged ) . toBeTruthy ( ) ;
121120 } ) ;
122121
@@ -143,7 +142,6 @@ describe('With Policy: client extensions', () => {
143142 query : {
144143 model : {
145144 async findMany ( { args, query } : any ) {
146- // take incoming `where` and set `age`
147145 args . where = { ...args . where , y : { lt : 300 } } ;
148146 return query ( args ) ;
149147 } ,
@@ -152,9 +150,8 @@ describe('With Policy: client extensions', () => {
152150 } ) ;
153151 } ) ;
154152
155- const xprisma = prisma . $extends ( ext ) ;
156- const db = enhanceRaw ( xprisma ) ;
157- await expect ( db . model . findMany ( ) ) . resolves . toHaveLength ( 1 ) ;
153+ await expect ( enhanceRaw ( prisma . $extends ( ext ) ) . model . findMany ( ) ) . resolves . toHaveLength ( 1 ) ;
154+ await expect ( enhanceRaw ( prisma ) . $extends ( ext ) . model . findMany ( ) ) . resolves . toHaveLength ( 1 ) ;
158155 } ) ;
159156
160157 it ( 'query override all models' , async ( ) => {
@@ -180,7 +177,6 @@ describe('With Policy: client extensions', () => {
180177 query : {
181178 $allModels : {
182179 async findMany ( { args, query } : any ) {
183- // take incoming `where` and set `age`
184180 args . where = { ...args . where , y : { lt : 300 } } ;
185181 console . log ( 'findMany args:' , args ) ;
186182 return query ( args ) ;
@@ -190,9 +186,8 @@ describe('With Policy: client extensions', () => {
190186 } ) ;
191187 } ) ;
192188
193- const xprisma = prisma . $extends ( ext ) ;
194- const db = enhanceRaw ( xprisma ) ;
195- await expect ( db . model . findMany ( ) ) . resolves . toHaveLength ( 1 ) ;
189+ await expect ( enhanceRaw ( prisma . $extends ( ext ) ) . model . findMany ( ) ) . resolves . toHaveLength ( 1 ) ;
190+ await expect ( enhanceRaw ( prisma ) . $extends ( ext ) . model . findMany ( ) ) . resolves . toHaveLength ( 1 ) ;
196191 } ) ;
197192
198193 it ( 'query override all operations' , async ( ) => {
@@ -218,7 +213,6 @@ describe('With Policy: client extensions', () => {
218213 query : {
219214 model : {
220215 async $allOperations ( { operation, args, query } : any ) {
221- // take incoming `where` and set `age`
222216 args . where = { ...args . where , y : { lt : 300 } } ;
223217 console . log ( `${ operation } args:` , args ) ;
224218 return query ( args ) ;
@@ -228,9 +222,8 @@ describe('With Policy: client extensions', () => {
228222 } ) ;
229223 } ) ;
230224
231- const xprisma = prisma . $extends ( ext ) ;
232- const db = enhanceRaw ( xprisma ) ;
233- await expect ( db . model . findMany ( ) ) . resolves . toHaveLength ( 1 ) ;
225+ await expect ( enhanceRaw ( prisma . $extends ( ext ) ) . model . findMany ( ) ) . resolves . toHaveLength ( 1 ) ;
226+ await expect ( enhanceRaw ( prisma ) . $extends ( ext ) . model . findMany ( ) ) . resolves . toHaveLength ( 1 ) ;
234227 } ) ;
235228
236229 it ( 'query override everything' , async ( ) => {
@@ -255,7 +248,6 @@ describe('With Policy: client extensions', () => {
255248 name : 'prisma-extension-queryOverride' ,
256249 query : {
257250 async $allOperations ( { operation, args, query } : any ) {
258- // take incoming `where` and set `age`
259251 args . where = { ...args . where , y : { lt : 300 } } ;
260252 console . log ( `${ operation } args:` , args ) ;
261253 return query ( args ) ;
@@ -264,9 +256,8 @@ describe('With Policy: client extensions', () => {
264256 } ) ;
265257 } ) ;
266258
267- const xprisma = prisma . $extends ( ext ) ;
268- const db = enhanceRaw ( xprisma ) ;
269- await expect ( db . model . findMany ( ) ) . resolves . toHaveLength ( 1 ) ;
259+ await expect ( enhanceRaw ( prisma . $extends ( ext ) ) . model . findMany ( ) ) . resolves . toHaveLength ( 1 ) ;
260+ await expect ( enhanceRaw ( prisma ) . $extends ( ext ) . model . findMany ( ) ) . resolves . toHaveLength ( 1 ) ;
270261 } ) ;
271262
272263 it ( 'result mutation' , async ( ) => {
@@ -301,11 +292,9 @@ describe('With Policy: client extensions', () => {
301292 } ) ;
302293 } ) ;
303294
304- const xprisma = prisma . $extends ( ext ) ;
305- const db = enhanceRaw ( xprisma ) ;
306- const r = await db . model . findMany ( ) ;
307- expect ( r ) . toHaveLength ( 1 ) ;
308- expect ( r ) . toEqual ( expect . arrayContaining ( [ expect . objectContaining ( { value : 2 } ) ] ) ) ;
295+ const expected = [ expect . objectContaining ( { value : 2 } ) ] ;
296+ await expect ( enhanceRaw ( prisma . $extends ( ext ) ) . model . findMany ( ) ) . resolves . toEqual ( expected ) ;
297+ await expect ( enhanceRaw ( prisma ) . $extends ( ext ) . model . findMany ( ) ) . resolves . toEqual ( expected ) ;
309298 } ) ;
310299
311300 it ( 'result custom fields' , async ( ) => {
@@ -339,10 +328,8 @@ describe('With Policy: client extensions', () => {
339328 } ) ;
340329 } ) ;
341330
342- const xprisma = prisma . $extends ( ext ) ;
343- const db = enhanceRaw ( xprisma ) ;
344- const r = await db . model . findMany ( ) ;
345- expect ( r ) . toHaveLength ( 1 ) ;
346- expect ( r ) . toEqual ( expect . arrayContaining ( [ expect . objectContaining ( { doubleValue : 2 } ) ] ) ) ;
331+ const expected = [ expect . objectContaining ( { doubleValue : 2 } ) ] ;
332+ await expect ( enhanceRaw ( prisma . $extends ( ext ) ) . model . findMany ( ) ) . resolves . toEqual ( expected ) ;
333+ await expect ( enhanceRaw ( prisma ) . $extends ( ext ) . model . findMany ( ) ) . resolves . toEqual ( expected ) ;
347334 } ) ;
348335} ) ;
0 commit comments