Files
Honza 87c8f27e73
CI / test (push) Successful in 1m12s
CI / build-and-push (push) Successful in 2m53s
Add category level and turn the reticle into a background watermark
2026-08-02 19:15:20 +02:00

51 lines
1.4 KiB
TypeScript

import { getPayload, Payload } from 'payload'
import config from '@/payload.config'
import { describe, it, beforeAll, expect } from 'vitest'
let payload: Payload
describe('Payload API', () => {
beforeAll(async () => {
// Schéma vznikne z konfigurace (`push` je zapnuté jen v testech).
payload = await getPayload({ config: await config })
})
it('má nadefinované všechny kolekce', () => {
const slugy = Object.keys(payload.collections)
expect(slugy).toEqual(
expect.arrayContaining(['products', 'categories', 'media', 'pages', 'users']),
)
})
it('umí založit a najít položku nabídky', async () => {
const kategorie = await payload.create({
collection: 'categories',
data: { nazev: 'Zbraně' },
})
expect(kategorie.slug).toBe('zbrane')
const vytvorena = await payload.create({
collection: 'products',
data: {
nazev: 'CZ 75 SP-01 Shadow',
kategorie: kategorie.id,
cena: 28900,
stav: 'skladem',
},
})
expect(vytvorena.id).toBeDefined()
// slug se doplňuje hookem z názvu
expect(vytvorena.slug).toBe('cz-75-sp-01-shadow')
const nalezene = await payload.find({
collection: 'products',
where: { slug: { equals: 'cz-75-sp-01-shadow' } },
})
expect(nalezene.docs).toHaveLength(1)
expect(nalezene.docs[0]?.cena).toBe(28900)
})
})