tests.ts•1.11 kB
import testMatrix from './_matrix'
// @ts-ignore
import type { PrismaClient } from './generated/prisma/client'
declare let prisma: PrismaClient
testMatrix.setupTestSuite(
() => {
beforeAll(async () => {
await prisma.testModel.create({
data: {
enum1: 'a',
enum2: 'a',
},
})
await prisma.testModel.create({
data: {
enum1: 'a',
enum2: 'b',
},
})
})
test('simple enum equality', async () => {
const result = await prisma.testModel.findMany({ where: { enum1: { equals: prisma.testModel.fields.enum2 } } })
expect(result).toEqual([expect.objectContaining({ enum1: 'a', enum2: 'a' })])
})
test('via extended client', async () => {
const xprisma = prisma.$extends({})
const result = await xprisma.testModel.findMany({ where: { enum1: { equals: xprisma.testModel.fields.enum2 } } })
expect(result).toEqual([expect.objectContaining({ enum1: 'a', enum2: 'a' })])
})
},
{
optOut: { from: ['sqlserver', 'sqlite'], reason: 'Enums are not supported' },
},
)