UNPKG

@websolutespa/payload-plugin-bowl

Version:

Bowl PayloadCms plugin of the BOM Repository

68 lines (67 loc) 2.68 kB
import { config, getTestConfig, PageCollection } from '@/test'; import { clearContext, endUsers, getContext, users } from '@websolutespa/test/payload'; import { v4 as uuid } from 'uuid'; import { afterAll, beforeAll, describe, expect, it } from 'vitest'; describe('page.service', ()=>{ let payload; let client; let userToken; let endUserToken; let apiKey; let testConfig; beforeAll(async ()=>{ const context = await getContext(config); payload = context.payload; client = context.client; userToken = await client.getToken('users', users.admin); endUserToken = await client.getToken('end_users', endUsers.user); apiKey = users.api.apiKey; testConfig = await getTestConfig(client, userToken); }); afterAll(async ()=>{ await clearContext(); }); describe('endpoint test requests', ()=>{ let pageDoc; beforeAll(async ()=>{ ({ doc: pageDoc } = await client.post(PageCollection.slug, { title: uuid(), slug: uuid(), order: 1, isDefault: false, useSplat: false, category: testConfig.documents.category.id, template: testConfig.documents.template.id, markets: [ testConfig.documents.market.id ], _status: 'published' }, { headers: { Authorization: `JWT ${userToken}` } })); }); describe('Page index get', ()=>{ it('should return an array of docs, each with a href property', async ()=>{ const pageDocs = await client.get(`${PageCollection.slug}?market=${testConfig.documents.market.id}&locale=${testConfig.defaultLocale}&pagination=false`, { headers: { Authorization: `users API-Key ${users.api.apiKey}` } }); pageDocs.forEach((doc)=>expect(doc.href).toBeDefined()); }); }); describe('Page detail get', ()=>{ it('should return a doc with a href property', async ()=>{ const doc = await client.get(`/${PageCollection.slug}/${pageDoc.id}?market=${testConfig.documents.market.id}&locale=${testConfig.defaultLocale}`, { headers: { Authorization: `users API-Key ${users.api.apiKey}` } }); expect(doc.href).toBeDefined(); }); }); }); }); //# sourceMappingURL=page.service.test.js.map