From 9631a24ed2b8a8971f03555bc97113588a0fa197 Mon Sep 17 00:00:00 2001 From: Quramy Date: Tue, 26 Mar 2024 22:01:26 +0900 Subject: [PATCH] use experimentalRollbackInTransaction --- jest.config.mjs | 1 + src/index.test.ts | 10 ++++++++-- 2 files changed, 9 insertions(+), 2 deletions(-) diff --git a/jest.config.mjs b/jest.config.mjs index fd79370..ee6322d 100644 --- a/jest.config.mjs +++ b/jest.config.mjs @@ -6,5 +6,6 @@ export default { setupFilesAfterEnv: [], testEnvironmentOptions: { verboseQuery: true, + enableExperimentalRollbackInTransaction: true, }, }; diff --git a/src/index.test.ts b/src/index.test.ts index f65c01a..06aa8ab 100644 --- a/src/index.test.ts +++ b/src/index.test.ts @@ -8,7 +8,9 @@ export async function ensureUser( } ): Promise { try { - await prisma.user.create({ data }); + await prisma.$transaction(async () => { + await prisma.user.create({ data }); + }); return true; } catch (err: any) { const uniqConstraintFailed = err.code === "P2002"; @@ -31,6 +33,10 @@ test(ensureUser.name, async () => { // succeed expect(await ensureUser(jestPrisma.client, data)).toBe(true); - // fail + // succeed expect(await jestPrisma.client.user.count()).toBe(1); }); + +test("count user", async () => { + expect(await jestPrisma.client.user.count()).toBe(0); +});