Skip to content

Commit e7f6b54

Browse files
committed
update
1 parent b99f14b commit e7f6b54

File tree

1 file changed

+15
-12
lines changed

1 file changed

+15
-12
lines changed

tests/regression/tests/issue-prisma-extension.test.ts

Lines changed: 15 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -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

Comments
 (0)