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..2f47556 100644 --- a/src/index.test.ts +++ b/src/index.test.ts @@ -28,9 +28,18 @@ test(ensureUser.name, async () => { // succeed expect(await ensureUser(jestPrisma.client, data)).toBe(true); - // succeed - expect(await ensureUser(jestPrisma.client, data)).toBe(true); + try { + await jestPrisma.client.$transaction(async () => { + // succeed + expect(await ensureUser(jestPrisma.client, data)).toBe(true); + throw new Error(); + }); + } catch {} - // fail + // succeed expect(await jestPrisma.client.user.count()).toBe(1); }); + +test("count user", async () => { + expect(await jestPrisma.client.user.count()).toBe(0); +});