tests.ts•1.76 kB
import { Providers } from '../_utils/providers'
import testMatrix from './_matrix'
// @ts-ignore
import type { PrismaClient } from './generated/prisma/client'
declare let prisma: PrismaClient
testMatrix.setupTestSuite(
() => {
test('floats', async () => {
const largeFloat = await prisma.floats.create({
data: { value: 1e20 },
})
const negativeFloat = await prisma.floats.create({
data: { value: -1e20 },
})
const largeInteger = await prisma.floats.create({
data: { value: Number.MAX_SAFE_INTEGER },
})
const negativeInteger = await prisma.floats.create({
data: { value: Number.MIN_SAFE_INTEGER },
})
const otherFloat = await prisma.floats.create({
data: { value: 13.37 },
})
expect(largeFloat.value).toEqual(1e20)
expect(negativeFloat.value).toEqual(-1e20)
expect(largeInteger.value).toEqual(Number.MAX_SAFE_INTEGER)
expect(negativeInteger.value).toEqual(Number.MIN_SAFE_INTEGER)
expect(otherFloat.value).toEqual(13.37)
})
},
{
skipDriverAdapter: {
from: ['js_pg'],
reason: `
Fails with:
Expected: 9007199254740991 Received: 9007199254740990
Underlying problem is in PG itself https://github.com/brianc/node-postgres/issues/3092,
only postgres < 12 is affected. If not fixed by then, should be ok to unskip after Postgres 11 goes
out of support.
`,
},
skip(when, { clientEngineExecutor, provider }) {
when(
clientEngineExecutor === 'remote' && provider === Providers.POSTGRESQL,
`
Query plan executor server uses pg driver internally, so it is affected
by the issue above too.
`,
)
},
},
)