nest-trpc-prisma-starter/apps/server/test/lib/reset-db.ts

21 lines
512 B
TypeScript
Raw Normal View History

2024-04-25 18:12:44 +00:00
import { Prisma } from 'database'
import { prisma } from './prisma'
export default async () => {
await prisma.$transaction(async (c) => {
const tasks = [] as Promise<any>[]
const allNames = [] as string[]
Prisma.dmmf.datamodel.models.forEach((model) => {
allNames.push(model.name[0].toLowerCase() + model.name.slice(1))
})
for (const key of allNames) {
if (key.startsWith('$'))
continue
tasks.push(c[key].deleteMany())
}
await Promise.all(tasks)
})
}